gpt4 book ai didi

arrays - np.nan 和 np.NaN 的区别

转载 作者:行者123 更新时间:2023-12-03 17:18:14 24 4
gpt4 key购买 nike

np.Nan 和 np.nan 有什么区别吗?根据我的理解,两者都用于空值,但如果你看这里

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt


df = pd.DataFrame([[np.nan,2,np.nan,0],[3,4,np.nan,1],[np.nan,np.nan,np.nan,5]],columns=list('ABCD'))
print(df)
print(np.nan == np.NaN)

我得到以下输出:
     A    B   C  D
0 NaN 2.0 NaN 0
1 3.0 4.0 NaN 1
2 NaN NaN NaN 5
False

Process finished with exit code 0

现在,如果这些相同 print(np.nan == np.NaN)应该返回 True以及为什么数据框中的值填充为 NaN ?

我收到 NaN不是一个数字,所以它可能会这样对待它,因此改变了数据框中的条目,但我仍然不确定。

最佳答案

所以基本上NaN , NANnan是 nan 的等效定义
或者换句话说NaNNANnan 的别名

np.nan
np.NaN
np.NAN
如果你要检查它们的相等性,它会返回 False如果你检查所有这三个的类型,你会发现所有的都是相同的 type(float)但让
a=np.NaN
b=np.NAN
c=np.nan
现在,如果您要检查 a、b 和 c 的相等性,它将返回 True即使在文档(第 4 行)中也说:-
不能使用相等来测试 NaN
您可以从此处查看文档:-
https://numpy.org/doc/stable/user/misc.html?highlight=numpy%20nan

关于arrays - np.nan 和 np.NaN 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53436339/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com