检测NaN,NA,Inf,-Inf等的一个功能?

SFu*_*n28 47 r nan r-faq na

是否有R中的单功能,用于确定如果一个值是NA,NaN,Inf,-Inf,或以其他方式不合式号码?

Jos*_*ich 64

你要 is.finite

> is.finite(NA)
[1] FALSE
> is.finite(NaN)
[1] FALSE
> is.finite(Inf)
[1] FALSE
> is.finite(1L)
[1] TRUE
> is.finite(1.0)
[1] TRUE
> is.finite("A")
[1] FALSE
> is.finite(pi)
[1] TRUE
> is.finite(1+0i)
[1] TRUE
Run Code Online (Sandbox Code Playgroud)

  • 真和假不是整数 - 但它们将被强制而没有错误/警告信息 (8认同)
  • @hadley:我不清楚; 谢谢你的澄清.我指的是R级布尔在C级是32位整数,而不是`is.integer(TRUE)`会返回"TRUE". (4认同)