Python 数据帧聚合到数据帧
从下面的数据帧格式中,我想给出“传统的”Python 数据帧聚合到数据帧,python,pandas,Python,Pandas,从下面的数据帧格式中,我想给出“传统的”dataframe格式。这似乎很容易解决,但我正在努力得到它 数据样本 输出 期望输出 解决方案1: 尝试使用以下方法简单地重置groupby上的索引: df.groupby(['col1','col2'])['col1'].agg({'Frequency':'count'}).reset_index() col1 col2 Frequency 0 A bar 2 1 A foo 2 2 A
dataframe
格式。这似乎很容易解决,但我正在努力得到它
数据样本
输出
期望输出
解决方案1: 尝试使用以下方法简单地重置
groupby
上的索引:
df.groupby(['col1','col2'])['col1'].agg({'Frequency':'count'}).reset_index()
col1 col2 Frequency
0 A bar 2
1 A foo 2
2 A zzz 1
3 B car 2
4 B dog 1
5 C bar 2
6 C zzz 1
解决方案2:
创建您的分组依据时使用作为\u index=False
:
df.groupby(['col1','col2'], as_index=False)['col1'].agg({'Frequency':'count'})
col1 col2 Frequency
0 A bar 2
1 A foo 2
2 A zzz 1
3 B car 2
4 B dog 1
5 C bar 2
6 C zzz 1
太好了,太容易了…谢谢
col1 col2 freq
A bar 2
A foo 2
A zzz 1
B car 2
B dog 1
C bar 2
C zzz 1
df.groupby(['col1','col2'])['col1'].agg({'Frequency':'count'}).reset_index()
col1 col2 Frequency
0 A bar 2
1 A foo 2
2 A zzz 1
3 B car 2
4 B dog 1
5 C bar 2
6 C zzz 1
df.groupby(['col1','col2'], as_index=False)['col1'].agg({'Frequency':'count'})
col1 col2 Frequency
0 A bar 2
1 A foo 2
2 A zzz 1
3 B car 2
4 B dog 1
5 C bar 2
6 C zzz 1