Neste pequeno artigo, discutiremos como calcular a diferença entre duas datas em pandas.
Diferença entre duas datas em dias
Podemos usar o objeto Timedelta para calcular a diferença entre duas datas em pandas.
Um exemplo é mostrado abaixo:
1 2 3 | importar pandas como PD date_1 = pd.to_dateTime ('2022-01-01') date_2 = pd.to_dateTime ('1990-01-01') |
No exemplo acima, temos dois objetos de datetime. Para calcular a diferença entre os dois dias em dias, podemos fazer o seguinte:
1 2 | diff = pd.Timedelta (date_1 - date_2).dias print (f "diff dias") |
O código acima calcula a diferença entre as duas datas e retorna o resultado em dias como mostrado:
1 | 11688 dias |
Diferença nos meses
Para obter a diferença em meses, podemos simplesmente dividir o resultado em 12 como mostrado:
1 2 | diff = pd.Timedelta (date_1 - date_2).dias / 12 print (f "diff meses") |
Isso deve retornar:
1 | 974.0 meses |
Outro método que podemos usar para determinar a diferença entre duas datas é a função timedetla64 em Numpy.
Um exemplo é mostrado abaixo:
1 2 3 4 5 | importar numpy como np date_1 = pd.to_dateTime ('2022-01-01 13:00:22') date_2 = pd.to_dateTime ('1990-01-01 00:00:00') diff = date_1 - date_2 diff/np.timedelta64 (1, 'd') |
No exemplo acima, começamos importando Numpy. Em seguida, temos dois objetos Pandas Timestamp.
Subtraímos as variáveis e usamos a função Timedelta64 para converter o valor em dias para calcular a diferença.
O código acima deve retornar:
1 | 11688.541921296297 |
Para converter o valor em anos, mude o segundo parâmetro de 'd' para 'y' como mostrado:
1 | 32.00214082779604 |
Conclusão
Este artigo fornece dois exemplos de como você pode calcular a diferença entre duas datas usando pandas e numpy.