1
resposta

Filtrar por intervalo de data/tempo no pandas

Tentei buscar se há alguma forma pra filtrar como a gente faz no filtro de planilhas por intervalos de datas, similar ao quando a gente pede uma consulta com SQL mas com phyton.

Tentei data range no data frame cru, pedi pro pandas filtrar por data de inicio e fim mas deu erro.

tem alguma forma de utilizar group by, ou alguma outra função que faça isso com menos linhas possíveis de código?

Meu problema é que tenho que gerar relatórios a partir de um csv, fazer a filtragem por intervalo de datas e ainda fazer a contagem por uma coluna em específico.

Isso, com certeza vai agilizar o trabalho que é feito em horas.

1 resposta

Olá Milena,

Peço desculpas pelo tempo, mas caso você ou mais alguém tenha essa dúvida vou tentar ajudar.

Antes de tudo é importante que as datas estejam no tipo correto (datetime é o recomendado), caso a coluna da data esteja como um tipo diferente pode ser convertido para data assim:

# Apenas no caso da coluna não ser do tipo datetime
df['Data'] = pd.to_datetime(df['Data'])

Agora podemos criar o filtro para selecionar apenas as datas que queremos:

# Nesse exemplo selecionamos as datas entre 01/01/2018 e 10/02/2019
selecao = (df['Data'] >= '2018-01-01') & (df['Data'] <= '2019-02-10')

df_filtrado = df[selecao]