Python 如何添加一个数据框的两个元素,保持之前的结果
Python how to add two elements of a dataframe keeping the result before
我想在我的数据框中添加它们之间的值,但每次都保留之前添加的结果。
简单来说,我想做:
df['col'][0]
df['col'][0] + df['col'][1]
df['col'][0] + df['col'][1] + df['col'][2]
df['col'][0] + df['col'][1] + df['col'][2] + df['col'][3]
.
.
.
df['col'][0] + ... + df['col'][n]
我想把每个值都放在一个列表中。
你能帮帮我吗?
非常感谢
您可以使用 cumsum
:
In [679]: df = pd.DataFrame({"A":[5, 3, 6, 4],
...: "B":[11, 2, 4, 3],
...: "C":[4, 3, 8, 5],
...: "D":[5, 4, 2, 8]})
In [680]: df
Out[680]:
A B C D
0 5 11 4 5
1 3 2 3 4
2 6 4 8 2
3 4 3 5 8
In [682]: df.A.cumsum(axis=0)
Out[682]:
0 5
1 8
2 14
3 18
我想在我的数据框中添加它们之间的值,但每次都保留之前添加的结果。
简单来说,我想做:
df['col'][0]
df['col'][0] + df['col'][1]
df['col'][0] + df['col'][1] + df['col'][2]
df['col'][0] + df['col'][1] + df['col'][2] + df['col'][3]
.
.
.
df['col'][0] + ... + df['col'][n]
我想把每个值都放在一个列表中。
你能帮帮我吗? 非常感谢
您可以使用 cumsum
:
In [679]: df = pd.DataFrame({"A":[5, 3, 6, 4],
...: "B":[11, 2, 4, 3],
...: "C":[4, 3, 8, 5],
...: "D":[5, 4, 2, 8]})
In [680]: df
Out[680]:
A B C D
0 5 11 4 5
1 3 2 3 4
2 6 4 8 2
3 4 3 5 8
In [682]: df.A.cumsum(axis=0)
Out[682]:
0 5
1 8
2 14
3 18