根据pandas数据框中的其他列创建一个聚合列

香努

我有一个数据框如下:

import pandas as pd 
import numpy as np
import datetime

# intialise data of lists. 
data = {'group'      :["A","A","B","B","B"],
        'A1_val'     :[4,5,7,6,5],
        'A1M_val'     :[10,100,100,10,1],
        'AB_val'     :[4,5,7,6,5],
        'ABM_val'     :[10,100,100,10,1],
        'AM_VAL'     : [4,5,7,6,5]
       } 

# Create DataFrame 
df1 = pd.DataFrame(data) 
df1

    group   A1_val  A1M_val AB_val  ABM_val AM_VAL
0   A       4       10      4       10       4
1   A       5       100     5       100      5
2   B       7       100     7       100      7
3   B       6       10      6       10       6
4   B       5       1       5       1        5

步骤1:我要创建如下列:A1_agg_val = A1_val和A1M_val的总和(从列中剥离M,如果名称匹配,则求和)

同样,AB_agg_val = AB_val + ABM_val

由于没有与“ AM_VAL”匹配的列,因此AM_agg_val = AM_val

My expected output:

    group   A1_val  A1M_val AB_val  ABM_val AM_VAL  A1_AGG_val  AB_AGG_val  A_AGG_val
0   A       4       10      4       10       4      14          14          4
1   A       5       100     5       100      5      105         105         5
2   B       7       100     7       100      7      107         107         7
3   B       6       10      6       10       6      16          16          6
4   B       5       1       5       1        5      6           6           5
ky

您可以在上使用groupby axis=1

out = (df1.assign(**df1.loc[:,df1.columns.str.lower().str.endswith('_val')]
       .groupby(lambda x: x[:2],axis=1).sum().add_suffix('_agg_value')))

print(out)

  group  A1_val  A1M_val  AB_val  ABM_val  AM_VAL  A1_agg_value  AB_agg_value  \
0     A       4       10       4       10       4            14            14   
1     A       5      100       5      100       5           105           105   
2     B       7      100       7      100       7           107           107   
3     B       6       10       6       10       6            16            16   
4     B       5        1       5        1       5             6             6   

   AM_agg_value  
0             4  
1             5  
2             7  
3             6  
4             5  

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据数据框的其他列创建一个新的pandas数据框列

来自分类Dev

根据其他列行中的过滤值,在pandas数据框中创建一个新列

来自分类Dev

根据现有数据框中的其他列创建一个新列

来自分类Dev

根据其他两个数据框创建一个额外的列

来自分类Dev

根据pyspark数据框中的其他列的值聚合一列

来自分类Dev

根据其他列中的值在python 3(pandas)数据框中创建新列

来自分类Dev

根据不同条件在Pandas数据框中创建一个新列

来自分类Dev

根据pandas数据框中的其他列创建新列

来自分类Dev

从其他具有相似索引的数据框的列创建一个熊猫数据框

来自分类Dev

根据其他数据框值创建一列

来自分类Dev

根据其他列的输入在数据框中创建一列

来自分类Dev

从Pandas数据框中的其他列创建新列

来自分类Dev

根据Pandas数据框中的其他三列更改一列的值

来自分类Dev

根据Pandas数据框中的其他三列更改一列的值

来自分类Dev

根据其他两列中的条件在R中创建一个新列

来自分类Dev

根据组中其他列中至少一个变量的出现创建新列

来自分类Dev

根据其他列在python pandas数据框中创建子列表的最大值

来自分类Dev

根据其他2个数据框中的值创建新列

来自分类Dev

如何根据熊猫中其他列的条件创建一个新列?

来自分类Dev

根据其他列中的观察结果创建一个新列

来自分类Dev

根据其他列中的条件创建一个BOOL列

来自分类Dev

根据其他列R中的不同值创建一个新列R

来自分类Dev

Python groupby - 根据其他列中的值创建一个新列

来自分类Dev

根据其他数据框中的列值在熊猫数据框中创建列

来自分类Dev

创建一个新的数据框列作为其他列的函数

来自分类Dev

遍历一个数据框,该数据框根据其他列的条件和值生成输出

来自分类Dev

在数据框中创建一个等级列,将R中的其他两个列混合在一起

来自分类Dev

根据另一个数据集中的列值在一个数据框中创建列

来自分类Dev

根据其他数据框的比较,创建带有列的Pandas数据框

Related 相关文章

  1. 1

    根据数据框的其他列创建一个新的pandas数据框列

  2. 2

    根据其他列行中的过滤值,在pandas数据框中创建一个新列

  3. 3

    根据现有数据框中的其他列创建一个新列

  4. 4

    根据其他两个数据框创建一个额外的列

  5. 5

    根据pyspark数据框中的其他列的值聚合一列

  6. 6

    根据其他列中的值在python 3(pandas)数据框中创建新列

  7. 7

    根据不同条件在Pandas数据框中创建一个新列

  8. 8

    根据pandas数据框中的其他列创建新列

  9. 9

    从其他具有相似索引的数据框的列创建一个熊猫数据框

  10. 10

    根据其他数据框值创建一列

  11. 11

    根据其他列的输入在数据框中创建一列

  12. 12

    从Pandas数据框中的其他列创建新列

  13. 13

    根据Pandas数据框中的其他三列更改一列的值

  14. 14

    根据Pandas数据框中的其他三列更改一列的值

  15. 15

    根据其他两列中的条件在R中创建一个新列

  16. 16

    根据组中其他列中至少一个变量的出现创建新列

  17. 17

    根据其他列在python pandas数据框中创建子列表的最大值

  18. 18

    根据其他2个数据框中的值创建新列

  19. 19

    如何根据熊猫中其他列的条件创建一个新列?

  20. 20

    根据其他列中的观察结果创建一个新列

  21. 21

    根据其他列中的条件创建一个BOOL列

  22. 22

    根据其他列R中的不同值创建一个新列R

  23. 23

    Python groupby - 根据其他列中的值创建一个新列

  24. 24

    根据其他数据框中的列值在熊猫数据框中创建列

  25. 25

    创建一个新的数据框列作为其他列的函数

  26. 26

    遍历一个数据框,该数据框根据其他列的条件和值生成输出

  27. 27

    在数据框中创建一个等级列,将R中的其他两个列混合在一起

  28. 28

    根据另一个数据集中的列值在一个数据框中创建列

  29. 29

    根据其他数据框的比较,创建带有列的Pandas数据框

热门标签

归档