W tym krótkim artykule omówimy, jak obliczyć różnicę między dwiema datami w pandach.
Różnica między dwiema datami w dniach
Możemy użyć obiektu timedelta do obliczenia różnicy między dwiema datami w pandy.
Przykład jest pokazany poniżej:
1 2 3 | importować pandy jako PD DATE_1 = PD.To_DateTime („2022-01-01”) DATE_2 = PD.To_DateTime ('1990-01-01') |
W powyższym przykładzie mamy dwa obiekty datetime. Aby obliczyć różnicę między dwoma dniami w ciągu dni, możemy zrobić:
1 2 | diff = pd.Timedelta (date_1 - date_2).dni print (f "diff dni") |
Kod powyżej oblicza różnicę między dwiema datami i zwraca wynik w dni, jak pokazano:
1 | 11688 dni |
Różnica w miesiącach
Aby uzyskać różnicę w miesiącach, możemy po prostu podzielić wynik w 12, jak pokazano:
1 2 | diff = pd.Timedelta (date_1 - date_2).dni / 12 print (f "diff miesiące") |
To powinno powrócić:
1 | 974.0 miesięcy |
Inną metodą, którą możemy użyć do określenia różnicy między dwiema datami, jest funkcja timedetla64 w Numpy.
Przykład jest pokazany poniżej:
1 2 3 4 5 | importować Numpy jako NP DATE_1 = PD.To_DateTime („2022-01-01 13:00:22 ') DATE_2 = PD.To_DateTime ('1990-01-01 00:00:00') diff = data_1 - data_2 diff/np.timedelta64 (1, „d”) |
W powyższym przykładzie zaczynamy od importu Numpy. Następnie mamy dwa obiekty czasu pandas.
Odejmujemy zmienne i używamy funkcji timedelta64 do konwersji wartości na dni, aby obliczyć różnicę.
Kod powyżej powinien zwrócić:
1 | 11688.541921296297 |
Aby przekonwertować wartość na lata, zmień drugi parametr z „d” na „y”, jak pokazano:
1 | 32.00214082779604 |
Wniosek
W tym artykule podano dwa przykłady, w jaki sposób można obliczyć różnicę między dwiema datami za pomocą pandy i numpy.