Voici un exemple d'utilisation de cumprod et cummax.
cumprod ・ ・ ・ Calcule le produit cumulatif pour tous les éléments du tableau. cummax ・ ・ ・ Extrait la valeur maximale de tous les éléments du tableau.
test.py
import numpy as np
import pandas as pd
dat = [
['2019-07-01',10],
['2019-07-02',12],
['2019-07-03',8],
['2019-07-04',14],
['2019-07-05',7],
['2019-07-08',3]
]
df0 = pd.DataFrame(dat,columns=["A","B"])
print(df0)
df1=df0['B'].pct_change()
df2=(1 + df1)
df3=(1 + df1).cumprod() #Calcule le produit cumulé du 0 au i-ème élément.
df4=(1 + df1).cummax() #Extrait la valeur maximale parmi les 0e à ième éléments.
print(df1)
print(df2)
print(df3)
print(df4)
<df0:Donnee de base>
A B
0 2019-07-01 10
1 2019-07-02 12
2 2019-07-03 8
3 2019-07-04 14
4 2019-07-05 7
5 2019-07-08 3
df1: (df0['B']I th et i-Calculez le premier taux de changement)
0 NaN
1 0.200000
2 -0.333333
3 0.750000
4 -0.500000
5 -0.571429
Name: B, dtype: float64
df2: (df1+Calculer 1)
0 NaN
1 1.200000
2 0.666667
3 1.750000
4 0.500000
5 0.428571
Name: B, dtype: float64
df2: (cumprod()Calculer le produit cumulé)
0 NaN
1 1.2
2 0.8 (=1.2×0.666667)
3 1.4 (=1.2×0.666667×1.75)
4 0.7 (=1.2×0.666667×1.75×0.5)
5 0.3 (=1.2×0.666667×1.75×0.5×0.428)
Name: B, dtype: float64
df3: (cummax()Extrayez la valeur maximale des éléments.)
0 NaN
1 1.20 (df2:Valeur maximale parmi les éléments 1 à 1)
2 1.20 (df2:Valeur maximale parmi les éléments 1 à 2)
3 1.75 (df2:Valeur maximale parmi les éléments 1 à 3)
4 1.75 (df2:Valeur maximale parmi les éléments 1 à 4)
5 1.75 (df2:Valeur maximale parmi les éléments 1 à 5)
Name: B, dtype: float64
Recommended Posts