Python:将熊猫用于groupby中的cumby

时间:2019-06-04 04:21:52

标签: python pandas pandas-groupby

我想根据组之间的差异构造数据组。例如,考虑以下

import pandas as pd

df = pd.DataFrame([['a', 1],['a', 1],['b', 1],['a', 2],['b', 3],['b', 3],['b', 3],['b', 4],['a', 5],['a', 5],['a', 6],['b', 6]], columns=['id', 'x'])
df['diff'] = df.groupby(['id', 'x'])['x'].diff()

现在,我可以(df['diff'] != 0).astype(int).cumsum(),这将根据变化的x产生组。但是,这不考虑id的组。我似乎无法弄清楚如何通过groupby运行它。

使用groupbycumsum表达式,可以预订一个布尔值,而不是一系列布尔值。此外,我无法使用int将其转换为astype。我想可以做到这一点,但不能做到这一点。非常感谢您的帮助。

0 个答案:

没有答案