有时候,我发现自己处于某种状态,其中某些东西返回TRUE is.numeric
,但实际结果是numeric(0)
。所以它实际上并不是一个数字。如何测试它是否为实际数字而不仅仅是空数字。
这是一个虚假的例子:
x <- as.numeric(factor())
[1] numeric(0)
如何测试x是否超过“数字”类,如实际数字?
PS:对于那些想知道我怎么会在如此奇怪的情况下结束的人,我正在抓网并希望转换一个并不总是在同一个地方的数字。所以有时候,我实际上是在调用as.numeric(factor())
,而numeric(0)
答案 0 :(得分:3)
您可以将length
用于此目的:
x <- as.numeric(factor())
x
# [1] numeric(0)
class(x)
# [1] "numeric"
length(x)
# [1] 0
比较:
y <- 1
y
# [1] 1
class(y)
# [1] "numeric"
length(y)
# [1] 1