计算每行的平均值,忽略python中的0值

时间:2015-11-22 17:57:38

标签: python

我有一个1000行10列的数据框 这些列中的3列是&total; ' total_2013'' total_2014'和' total_2015' 我想创建一个新列,包含每行3年的总平均值,但忽略任何0值。

1 个答案:

答案 0 :(得分:0)

如果您使用pandas

使用DataFrame.mean利用skipna属性。

首先使用以下代码0替换None

columns = ['total_2013', 'total_2014', 'total_2015']
df[columns].replace(0, None)

然后计算mean

df["total"] = df[columns].mean(
                 axis=1,      # columns mean
                 skipna=True  # skip nan values
                 )