在熊猫数据框中使用.groupby()时松散的列

时间:2014-10-12 03:38:15

标签: python pandas dataframe

我正在尝试将.groupby()函数与panda数据帧一起使用,但我一直在放弃我想要分组的列。 我试图按年份进行分组并成功完成此操作,但

列名称被删除,因此我无法调用该列。添加了一个具有列名称的额外行,但我无法访问它。 我做错了吗?

例如我运行了以下代码

stats2 = stats.groupby('yearID').mean()

我得到了这个结果

              2B      3B                HR       BB       1B
yearID                  
1956    0.035939    0.007809    0.024694    0.096666    0.164637
1957    0.036462    0.007220    0.023651    0.087744    0.167484
1958    0.036856    0.007120    0.024353    0.088281    0.166760

关于我做错了什么以及如何解决这个问题的任何想法?

感谢

2 个答案:

答案 0 :(得分:2)

分组时使用as_index = False选项

stats2 = stats.groupby('yearID', as_index = False).mean()

正如其他用户所说,默认行为是组密钥成为索引。使用刚刚描述的选项可以防止此行为。

答案 1 :(得分:1)

您分组的列将成为结果中的索引。这就是你所谓的“额外专栏”。

如果要将其作为列恢复,则应stats2.reset_index()