Pandas Python:使用空组初始化groupby对象

4

我有一个大的数据框。我想按照数据框中的三列进行分组,然后对每个分组应用一个函数。但是,我也对一些不在数据框中的分组和键感兴趣。如何将它们添加到groupby对象中,以便我可以统一地在所有分组上使用groupby.apply()


合并后再分组怎么样?你能举个例子吗? - Noah
1个回答

4

我认为事后可能需要重新索引:

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

例如,这里的 s 对于 (1, 1) 没有结果。我们可以使用 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

这正是我想要做的。谢谢。 - svenkatesh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接