English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Timedelta Pandas

Exemple d'opération Pandas Timedelta

L'augmentation du temps est la différence de temps, exprimée en unité de différence, par exemple, jours, heures, minutes, secondes. Ils peuvent être positifs ou négatifs.

En passant une chaîne littérale, nous pouvons créer un objet timedelta.

Chaîne

Nous pouvons créer des objets Timedelta avec divers paramètres, comme indiqué ci-dessous-

import pandas as pd
print(pd.Timedelta('2 jours 2 heures 15 minutes 30 secondes'))

Les résultats de l'exécution sont les suivants :

 2 jours 02:15:30

Entier

En passant un entier à l'unité, le paramètre crée un objet Timedelta.

import pandas as pd
print(pd.Timedelta(6,unit='h'))

Les résultats de l'exécution sont les suivants :

 0 jours 06:00:00

Décalage de données

Décalage de données (par exemple-semaines, jours, heures, minutes, secondes, millisecondes, microsecondes, nanosecondes) peuvent également être utilisés lors de la construction.

import pandas as pd
print(pd.Timedelta(days=2))

Les résultats de l'exécution sont les suivants :

2 jours 00:00:00

to_timedelta()

En utilisant pd.to_timedelta, vous pouvez convertir un scalaire, un tableau, une liste ou une séquence à partir du format timedelta reconnu/La conversion de valeur en type Timedelta. Si l'entrée est une Series, alors une Series sera construite; si l'entrée est un scalaire, alors un scalaire sera construit; sinon, une TimedeltaIndex sera sortie.

import pandas as pd
print(pd.Timedelta(days=2))

Les résultats de l'exécution sont les suivants :

2 jours 00:00:00

Opérations spécifiques

Vous pouvez effectuer des opérations sur Series / Opérations sur DataFrame, en comparant datetime64 [ns] Series ou Timestamps pour effectuer des opérations de soustraction pour construire timedelta64 [ns] Series .
Maintenant, créons un DataFrame avec des objets Timedelta et datetime et effectuons des opérations arithmétiques dessus-

 import pandas as pd
 s = pd.Series(pd.date_range('2012-1-1', periods=3, freq='D'))
 td = pd.Series([ pd.Timedelta(days=i) for i in range(3) ])
 df = pd.DataFrame(dict(A = s, B = td))
 print(df)

Les résultats de l'exécution sont les suivants :

          A      B
0  2012-01-01 0 jours
1  2012-01-02 1 jours
2  2012-01-03 2 jours

Opérations d'addition

 import pandas as pd
 s = pd.Series(pd.date_range('2012-1-1', periods=3, freq='D'))
 td = pd.Series([ pd.Timedelta(days=i) for i in range(3) ])
 df = pd.DataFrame(dict(A = s, B = td))
 df['C'] = df['A']+df['B']
 print(df)

Les résultats de l'exécution sont les suivants :

         A      B          C
0 2012-01-01 0 jours 2012-01-01
1 2012-01-02 1 jours 2012-01-03
2 2012-01-03 2 jours 2012-01-05

Opérations de soustraction

 import pandas as pd
 s = pd.Series(pd.date_range('2012-1-1', periods=3, freq='D'))
 td = pd.Series([ pd.Timedelta(days=i) for i in range(3) ])
 df = pd.DataFrame(dict(A = s, B = td))
 df['C'] = df['A']+df['B']
 df['D'] = df['C']+df['B']
 print(df)

Les résultats de l'exécution sont les suivants :

         A      B          C          D
0 2012-01-01 0 jours 2012-01-01 2012-01-01
1 2012-01-02 1 jours 2012-01-03 2012-01-04
2 2012-01-03 2 jours 2012-01-05 2012-01-07