Hier ist ein Beispiel für die Verwendung von Cumprod und Cummax.
cumprod ・ ・ ・ Berechnet das kumulative Produkt für alle Elemente des Arrays. cummax ・ ・ ・ Extrahiert den Maximalwert aus allen Elementen des Arrays.
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() #Berechnet das kumulative Produkt vom 0. bis zum i-ten Element.
df4=(1 + df1).cummax() #Extrahiert den Maximalwert unter dem 0. bis i-ten Element.
print(df1)
print(df2)
print(df3)
print(df4)
<df0:Grundinformationen>
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']Ich th und ich-Berechnen Sie die erste Änderungsrate)
0 NaN
1 0.200000
2 -0.333333
3 0.750000
4 -0.500000
5 -0.571429
Name: B, dtype: float64
df2: (df1+Berechnen Sie 1)
0 NaN
1 1.200000
2 0.666667
3 1.750000
4 0.500000
5 0.428571
Name: B, dtype: float64
df2: (cumprod()Berechnen Sie das kumulative Produkt)
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()Extrahieren Sie den Maximalwert aus den Elementen.)
0 NaN
1 1.20 (df2:Maximalwert zwischen den Elementen 1 bis 1)
2 1.20 (df2:Maximalwert zwischen den Elementen 1 bis 2)
3 1.75 (df2:Maximalwert zwischen den Elementen 1 bis 3)
4 1.75 (df2:Maximalwert zwischen den Elementen 1 bis 4)
5 1.75 (df2:Maximalwert zwischen den Elementen 1 bis 5)
Name: B, dtype: float64
Recommended Posts