【发布时间】:2018-08-04 15:35:49
【问题描述】:
df = pd.DataFrame(dict(
list(
zip(["A", "B", "C"],
[np.array(["id %02d" % i for i in range(1, 11)]).repeat(10),
pd.date_range("2018-01-01", periods=100).strftime("%Y-%m-%d"),
[i for i in range(10, 110)]])
)
))
df = df.groupby(["A", "B"]).sum()
df["D"] = df["C"].shift(1).rolling(2).mean()
df
此代码生成以下内容:
我希望为每个新 ID 重新开始滚动逻辑。现在,ID 02 正在使用来自ID 01 的最后两个值来计算平均值。
如何做到这一点?
【问题讨论】:
标签: python pandas dataframe pandas-groupby