熊猫数据框,如何将单个列分组并将总和应用于多列并添加新的总和列?

纳迪姆·哈克(Nadeem Haque)

这应该很容易,但是以某种方式我找不到有效的解决方案。

我有一个熊猫数据框,看起来像这样:

Slno   Date         col2   col3   col4   col5  col6
0     01/02/20      2      1      2      5     d
1     03/02/20      5      1      2      4     g
2     04/02/20      5      1      2      5     h
3     05/02/20      4      1      2      6     e
4     08/02/20      8      1      2      5     g
5     05/02/20      8      1      2      8     r

**我想按日期sum()分组并按行获取col2,col3,col4,col5的行作为新列总计

这是我尝试过的:

df_new[Total] = df.groupby(['Date', sort=False])["col2", "col3", col4", "col5].sum(axis = 1)

它给出ValueError:传递了错误的项目数4,放置意味着1

我也尝试过

         df = (df.groupby(['Date'])
         .agg(Total=('ConfirmedIndianNational', 'ConfirmedForeignNational', 'Cured', 'Deaths', 'sum'))
         .reset_index())

它给出TypeError:aggregate()缺少1个必需的位置参数:'arg'

我是新蟒蛇,搜索了所有可能的解决方案,但有新用途。

ky

您可以设置Date为索引,然后取轴= 1上的列总和,然后进行分组level=0和变换sum

df['Total'] = (df.set_index('Date')[["col2", "col3","col4", "col5"]].sum(1)
           .groupby(level=0).transform('sum').to_numpy())

print(df)

   Slno      Date  col2  col3  col4  col5 col6  Total
0     0  01/02/20     2     1     2     5    d     10
1     1  03/02/20     5     1     2     4    g     12
2     2  04/02/20     5     1     2     5    h     13
3     3  05/02/20     4     1     2     6    e     32 # this is duplicated per group
4     4  08/02/20     8     1     2     5    g     16
5     5  05/02/20     8     1     2     8    r     32 # this is duplicated per group

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

熊猫数据框,如何将多个列分组并为特定列应用总和并添加新的计数列?

熊猫-数据框分组-如何获取多列总和

熊猫数据框:如何将describe()应用于每个组并添加到新列?

如何将函数应用于分组集并将列绑定到现有数据框

如何将条件颜色样式应用于多索引熊猫数据框中的列

如何将Lambda函数应用于熊猫数据框中的某些行并创建新列

如何将权重应用于数据框中的特定列以汇总新的“得分”列?

如何将函数应用于数据框列

如何将Lambda函数正确应用于熊猫数据框列

如何将功能应用于GROUPWISELY数据框的所有列?(在python熊猫中)

将函数应用于熊猫中分组数据的单个列

获取所有行并将总和应用于列

熊猫将数据框上的功能应用于多列

将功能应用于熊猫数据框的列

将函数应用于数据框列熊猫

熊猫数据框将功能应用于整个列

我如何将语言工具应用于 Python df 并将结果添加为 df 中的新列?

将转换应用于多列pyspark数据框

如何将熊猫多索引列数据框与单个索引数据框连接

如何将函数应用于熊猫数据框中一列的每一行?

熊猫:如何将函数应用于不同的列

如何将函数应用于数据框,以便在数据框上创建新列?

熊猫如何基于所有行的值向数据框添加新列,特定列的值应用于整个数据框

如何将自定义函数应用于熊猫数据框的2列?

熊猫数据框按两列分组,计数和总和

如何将简单函数应用于多列?

将函数应用于pandas数据框并添加新列?

如何将CountVectorizer应用于数据集的列?

如何将lambda函数正确应用于数据框的列?