查找列的总和,即使这些列不存在也要添加零

时间:2018-07-21 20:02:28

标签: python pandas dataframe

我有以下数据集:

coll1    col2    col3 
  2        3      4
  5        6      7
  8        9      1

如果要编写代码,我想生成另一列。假设总计:

df[total]=df['col1']+df['col2']+df['col3']+df['col4']+df['col5']

我知道col4和col5不存在,我想编写代码,即使col4和col5没有退出,也不会显示任何错误,而是在方程式中添加零。

因此第一行的结果将为9。没有任何错误。 如何编写代码?

1 个答案:

答案 0 :(得分:2)

使用reindex,NaN不计入总和(在DataFrame中):

col_list = ['col1', 'col2', 'col3', 'col4', 'col5']
df.reindex(col_list, axis=1).sum(axis=1)

这仅基于df.sum(axis=1)由于任何原因都不适用的假设。