确定列的累积最大值

时间:2017-08-25 10:10:24

标签: python pandas dataframe

我正在尝试以下代码

" "

假设第一个df = pd.DataFrame([[23, 52], [36, 49], [52, 61], [75, 82], [97, 12]], columns=['A', 'B']) df['C'] = np.where(df['A'] > df['C'].shift(), df['A'], df['C'].shift()) print(df) 操作应假设为0(因为df['C].shift()不存在)

预期输出

df['C']

但我收到了KeyError异常。

    A   B   C
0  23  52  23
1  36  49  36
2  12  61  36
3  75  82  75
4  70  12  75

根据我的理解,这种情况正在发生,因为C列第一次不存在,所以移动列会抛出此异常。

我的问题是有另一种解决这个问题的方法吗?

1 个答案:

答案 0 :(得分:6)

您需要cummax

df['C'] = df.A.cummax()