【发布时间】:2019-04-04 00:18:36
【问题描述】:
df:
id1 id2 value1 value2
-----------------------------------
a b 10 5
c a 5 10
b c 0 0
c d 2 1
d a 10 20
a c 5 10
从列 ['id1','id2'] 中获取与 id 'a' 关联的值的总和:
id1 id2 a.rolling(2).sum()
-----------------------------------
a b NaN
c a 20
d a 30
a c 25
如何使用 df.groupby 函数从两个不同的列中获取 id 'a' 值的滚动总和?
我试过这个df.groupby(['id1','id2])['value1','value2'].transform(lambda x: x.rolling(2).sum()),但没用。
【问题讨论】:
-
在您最初的
df中,所有组都是单行,这将有助于获得您的预期输出。请参阅here 了解如何设置好问题的格式。
标签: python pandas dataframe pandas-groupby data-manipulation