相关疑难解决方法(0)

比较含有NaN的numpy数组

对于我的unittest,我想检查两个数组是否相同.减少的例子:

a = np.array([1, 2, np.NaN])
b = np.array([1, 2, np.NaN])
if np.all(a==b):
    print 'arrays are equal'
Run Code Online (Sandbox Code Playgroud)

这不起作用,因为nan!= nan.什么是最好的方法?

提前致谢.

python numpy

52
推荐指数
7
解决办法
2万
查看次数

Pandas DataFrames与NaNs相等比较

在单元测试一些函数的上下文中,我试图使用python pandas建立2个DataFrame的相等性:

ipdb> expect
                            1   2
2012-01-01 00:00:00+00:00 NaN   3
2013-05-14 12:00:00+00:00   3 NaN

ipdb> df
identifier                  1   2
timestamp
2012-01-01 00:00:00+00:00 NaN   3
2013-05-14 12:00:00+00:00   3 NaN

ipdb> df[1][0]
nan

ipdb> df[1][0], expect[1][0]
(nan, nan)

ipdb> df[1][0] == expect[1][0]
False

ipdb> df[1][1] == expect[1][1]
True

ipdb> type(df[1][0])
<type 'numpy.float64'>

ipdb> type(expect[1][0])
<type 'numpy.float64'>

ipdb> (list(df[1]), list(expect[1]))
([nan, 3.0], [nan, 3.0])

ipdb> df1, df2 = (list(df[1]), list(expect[1])) ;; df1 == df2
False
Run Code Online (Sandbox Code Playgroud)

鉴于我试图expect对整个(df包括NaN职位)进行全面测试,我做错了什么?

比较包括 …

python equality nan pandas

26
推荐指数
4
解决办法
3万
查看次数

标签 统计

python ×2

equality ×1

nan ×1

numpy ×1

pandas ×1