我的DataFrame看起来像这样:
pd.DataFrame([3,1,2,5,2], columns=['Var'], index=pd.date_range('2017-01-01',periods=5))
Var
2017-01-01 3
2017-01-02 1
2017-01-03 2
2017-01-04 5
2017-01-05 2
我想创建一个具有最大值的新列,直到这样的时间段:
Var MaxVar
2017-01-01 3 3
2017-01-02 1 3
2017-01-03 2 3
2017-01-04 5 5
2017-01-05 2 5
大熊猫有可能吗?
答案 0 :(得分:2)
使用Series.cummax()方法:
In [146]: df['MaxVar'] = df.Var.cummax()
In [147]: df
Out[147]:
Var MaxVar
2017-01-01 3 3
2017-01-02 1 3
2017-01-03 2 3
2017-01-04 5 5
2017-01-05 2 5