我试图在单个 Id
列上加入多个 pandas 数据帧,但是当我尝试合并时收到警告:
KeyError: 'Id'.
我认为这可能是因为我的数据框有由 groupby
语句产生的偏移列,但我很可能是错的。无论哪种方式,我都无法弄清楚如何“取消堆叠”我的数据框列标题。 this question 上没有答案似乎有效。
我的groupby
代码:
step1 = pd.DataFrame(step3.groupby(['Id', 'interestingtabsplittest2__grp'])['applications'].sum())
step1.sort('applications', ascending=False).head(3)
返回:
如何将这些偏移 header 放入顶层?
最佳答案
您正在寻找 .reset_index()
.
In [11]: df = pd.DataFrame([[2, 3], [5, 6]], pd.Index([1, 4], name="A"), columns=["B", "C"])
In [12]: df
Out[12]:
B C
A
1 2 3
4 5 6
In [13]: df.reset_index()
Out[13]:
A B C
0 1 2 3
1 4 5 6
注意:在进行分组时,您可以通过使用 as_index=False
来避免这一步。
step1 = step3.groupby(['Id', 'interestingtabsplittest2__grp'], as_index=False)['applications'].sum()
关于python - groupby之后,如何展平列标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33004573/