Comment calculer le pourcentage de changement chez les pandas
Vous pouvez utiliser la fonction pct_change() pour calculer le pourcentage de changement entre les valeurs dans les pandas :
#calculate percent change between values in pandas Series s.pct_change() #calculate percent change between rows in pandas DataFrame df['column_name'].pct_change()
Les exemples suivants montrent comment utiliser cette fonction dans la pratique.
Exemple 1 : Pourcentage de changement dans la série pandas
Le code suivant montre comment calculer le pourcentage de changement entre les valeurs d’une série pandas :
import pandas as pd #create pandas Series s = pd.Series([6, 14, 12, 18, 19]) #calculate percent change between consecutive values s.pct_change() 0 NaN 1 1.333333 2 -0.142857 3 0.500000 4 0.055556 dtype: float64
Voici comment ces valeurs ont été calculées :
- Indice 1 : (14 – 6) / 6 = 1,333333
- Indice 2 : (12 – 14) / 14 = -.142857
- Indice 3 : (18 – 12) / 12 = 0,5
- Indice 4 : (19 – 18) / 18 = 0,055556
Notez que vous pouvez également utiliser l’argument périodes pour calculer la variation en pourcentage entre les valeurs à différents intervalles :
import pandas as pd #create pandas Series s = pd.Series([6, 14, 12, 18, 19]) #calculate percent change between values 2 positions apart s.pct_change(periods=2) 0 NaN 1 NaN 2 1.000000 3 0.285714 4 0.583333 dtype: float64
Voici comment ces valeurs ont été calculées :
- Indice 2 : (12 – 6) / 6 = 1,000000
- Indice 3 : (18 – 14) / 14 = 0,285714
- Indice 4 : (19 – 12) / 12 = .583333
Exemple 2 : Pourcentage de changement dans le DataFrame pandas
Le code suivant montre comment calculer la variation en pourcentage entre des lignes consécutives dans un DataFrame pandas :
import pandas as pd #create DataFrame df = pd.DataFrame({'period': [1, 2, 3, 4, 5], 'sales': [6, 7, 7, 9, 12]}) #view DataFrame df period sales 0 1 6 1 2 7 2 3 7 3 4 9 4 5 12 #calculate percent change between consecutive values in 'sales' column df['sales_pct_change'] = df['sales'].pct_change() #view updated DataFrame df period sales sales_pct_change 0 1 6 NaN 1 2 7 0.166667 2 3 7 0.000000 3 4 9 0.285714 4 5 12 0.333333
Voici comment ces valeurs ont été calculées :
- Indice 1 : (7 – 6) / 6 = .166667
- Indice 2 : (7 – 7) / 7 = 0,000000
- Indice 3 : (9 – 7) / 7 = .285714
- Indice 4 : (12 – 9) / 9 = .333333
Vous pouvez trouver la documentation complète de la fonction pct_change() ici .
Ressources additionnelles
Comment calculer la moyenne des colonnes dans Pandas
Comment calculer la médiane chez les pandas
Comment calculer une moyenne mobile chez les pandas
Comment calculer la corrélation glissante chez les pandas