Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 合并具有相同值的行_Python_Pandas_Dataframe - Fatal编程技术网

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()