用NaN python比较两个列表

时间:2014-02-17 09:27:39

标签: python arrays numpy nan

我认为这是一个简单的问题,并寻找相关主题,但我没有找到正确的事情。这是问题所在:

我有两个NumPy数组,我需要通过计算一些标准进行统计分析,例如相关系数和Nash标准(对于熟悉Nash的人)。由于在第一个阵列中是观测数据(第二个是模拟结果),我有一些NaN。我希望我的程序能够计算忽略第一个数组中的值为NaN的值对的标准。 我尝试了掩码方法。如果我只需要处理第一个数组(计算其平均值为例),它就可以正常工作,但不能用于比较两个数组的值。

有人能帮忙吗?谢谢!

1 个答案:

答案 0 :(得分:0)

刚刚回答了类似的问题Numpy only on finite entries。您可以使用Numpy的isnan函数替换数组中的NaN值,这是处理NaN值的常用方法。

import numpy as np

replace_NaN = np.isnan(array_name)
array_name[replace_NaN] = 0