我有一个大的数据框。我想按照数据框中的三列进行分组,然后对每个分组应用一个函数。但是,我也对一些不在数据框中的分组和键感兴趣。如何将它们添加到groupby对象中,以便我可以统一地在所有分组上使用groupby.apply()
?
我认为事后可能需要重新索引:
In [11]: df = pd.DataFrame([[1, 2, 3], [2, 1, 6], [2, 2, 9]], columns=['A', 'B', 'C'])
In [12]: s = df.groupby(['A', 'B']).sum()
In [13]: s
Out[13]:
C
A B
1 2 3
2 1 6
2 9
MultiIndex.from_product
将“total”索引输入(或者如果您已经有它,可以单独输入):In [14]: m = pd.MultiIndex.from_product([[1, 2], [1, 2]], names=['A', 'B'])
In [15]: s.reindex(m)
Out[15]:
C
A B
1 1 NaN
2 3
2 1 6
2 9