Python 合并具有相同值的行
我有一个熊猫数据框,如下所示:Python 合并具有相同值的行,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个熊猫数据框,如下所示: code_module code_presentation id_student sum_click 0 AAA 2013J 28400 18 这里您会注意到,有许多行具有相同的code\u模块、code\u表示、id\u学生组合 我要做的是合并所有这些重复的行,并在“求和”中对每组单击“求和” 例如,对于顶部行,它们将合并为一行,如下所示:
code_module code_presentation id_student sum_click
0 AAA 2013J 28400 18
这里您会注意到,有许多行具有相同的code\u模块、code\u表示、id\u学生
组合
我要做的是合并所有这些重复的行,并在“求和”中对每组单击“求和”
例如,对于顶部行,它们将合并为一行,如下所示:
code_module code_presentation id_student sum_click
0 AAA 2013J 28400 18
在SQL术语中,私钥应该是code\u模块、code\u表示、id\u学生
组合
在此过程中,我尝试以下列方式使用groupby:
groupby(['id\u student','code\u presentation','code\u module'])。聚合({'sum\u click':'sum',})
但这不起作用,因为它提供的学生ID甚至不在我的数据集中,我不明白为什么
此外,groupby似乎不是我想要的,因为它的数据结构不同于标准的pandas数据框架,这正是我想要的
从以下输出中可以看出问题
sum_click
id_student code_presentation code_module
6516 2014J AAA 2791
8462 2013J DDD 646
2014J DDD 10
11391 2013J AAA 934
第1行和第2行(从0开始编制索引)应该是不同的行,而不是原来的组
df.groupby(['code_module', 'code_presentation', 'id_student']).agg(sum_clicks=('sum_click', 'sum')).reset_index()