我想知道如何获取包含NaN值的列表的平均值。可以使用以下方法:
np.mean(mylist)
预期结果返回的是NaN值,这显然是错误的。 我该怎么做才能得到平均值呢?
使用np.nanmean函数来忽略NaN值:
np.nanmean(mylist)
In [108]: np.nanmean([np.nan, 1, 2, np.nan, 3])
Out[108]: 2.0
temp = 0.0
for i in range(len(your_array)):
if not math.isnan(your_array[i]):
temp += your_array[i]
temp /= len(your_array)
print(temp)
NumPy
没有明确区分“无法确定”和“无法获得”的概念。缺失数据也用NaN
值表示,这可能看起来不直观甚至是不自然的。因此,这个问题是有意义的 :) - cel