如何正确地将 NaN 转换为 NA
How to correctly convert NaN to NA
在给定的双向量上,我怎么可以通过
定义-999
到NA
v[v == -999] <- NA
但不是
v[v == NaN] <- NA
以及如何正确地将 NaN
转换为 NA
?
==
不适用于测试 NA
和 NaN
值。这很好,因为从数据的角度来看,两个缺失值可能相同也可能不同。使用 is.na()
和 is.nan()
进行测试。
你要的是v[is.nan(v)] <- NA
您可以在 ?NaN
和 ?NA
的帮助页面中找到详细信息。
帮助页面上提到了这一点,但值得指出的是 NaN
被视为一种特殊类型的 NA
,因此我们得到了这种行为:
> is.na(NaN)
[1] TRUE
> is.nan(NA)
[1] FALSE
在给定的双向量上,我怎么可以通过
定义-999
到NA
v[v == -999] <- NA
但不是
v[v == NaN] <- NA
以及如何正确地将 NaN
转换为 NA
?
==
不适用于测试 NA
和 NaN
值。这很好,因为从数据的角度来看,两个缺失值可能相同也可能不同。使用 is.na()
和 is.nan()
进行测试。
你要的是v[is.nan(v)] <- NA
您可以在 ?NaN
和 ?NA
的帮助页面中找到详细信息。
帮助页面上提到了这一点,但值得指出的是 NaN
被视为一种特殊类型的 NA
,因此我们得到了这种行为:
> is.na(NaN)
[1] TRUE
> is.nan(NA)
[1] FALSE