Skip to main content
 首页 » 编程设计

python之除 Python 列表中指定的列之外的所有列的总和

2025年05月04日21davidwang456

我有每个 ID 的以下数据:

id  ----    Base    AE      Val     LT  RO+ Prem    AM  TN  T3  AR 
05  0       34.34   9.42    70.68   0   0   0   0   0   0   0 
108 0       43.77   0       28      0   0   0   0   0   0   0 
205 0       77.64   0       32.2    0   0   0   0   0   0   0 
320 0       66.24   0       59.628  0   0   0   0   0   0   0 
313 0       21.66   0       21.442  0   0   0   0   0   0   0 
324 0       72.37   0       701.12  0   0   0   0   0   0   0 
505 0       76.057  0       43.87   0   0   0   0   0   0   0 

现在我想找到所有列的总和,除了我指定的一些列和其他列分别到如下列中:

id  Base    Val     Others  Total 
05  34.34   70.68   9.42    114.441387 
108 43.77   28      0       71.77 
205 77.64   32.2    0       109.84 
320 66.24   59.628  0       125.868 
313 21.66   21.442  0       43.102 
324 72.37   701.12  0       773.49 
505 76.057  43.87   0       119.927 

因此,如果我要保留的列列表:

cols_to_keep = ['Base','Val'] 

不属于此列表的其他 channel 将在其他列中汇总,每行中的所有值总计。 id是记录的索引。

我能够保留我在列表中声明的列,但是如何在其他列中总结除列表中的其他列。 有人可以帮我吗? 数据在 pandas df 中。

请您参考如下方法:

Drop您不想汇总的列:

df['Others'] = df.drop(cols_to_keep, axis=1).sum(axis=1) 
df['Total'] = df.sum(axis=1)