和函数如何与NaN元素一起使用?

问题描述 投票:1回答:1

我有一个带有某些NaN值的DataFrame。在此DataFrame中,有些行具有所有NaN值。当我在这些行上应用求和函数时,它将返回零而不是NaN。代码如下:

df = pd.DataFrame(np.random.randint(10,60,size=(5,3)),
              index = ['a','c','e','f','h'],
              columns = ['One','Two','Three'])

df = df.reindex(index=['a','b','c','d','e','f','g','h'])
print(df.loc['b'].sum())

任何建议?

python-3.x pandas
1个回答
1
投票

sum函数将NaN值设为0。

如果您希望结果为NaN您可以使用:

df.loc['b'].sum(min_count=1)

输出:

nan

如果您应用于所有行(使用reindex之后),您将获得以下内容:

df.sum(axis=1,min_count=1)

a    137.0
b      NaN
c     79.0
d      NaN
e    132.0
f     95.0
g      NaN
h     81.0
dtype: float64
© www.soinside.com 2019 - 2024. All rights reserved.