首先,我需要在R中初始化一个空向量,以下是否有效?
vec <- vector()
Run Code Online (Sandbox Code Playgroud)
我如何评估vec是否为空?
Yu *_*hen 18
似乎使用length(vector_object)有效:
vector.is.empty <- function(x) return(length(x) ==0 )
> v <- vector()
> class(v)
[1] "logical"
> length(v)
[1] 0
> vector.is.empty(v)
[1] TRUE
>
> vector.is.empty(c())
[1] TRUE
> vector.is.empty(c(1)[-1])
[1] TRUE
Run Code Online (Sandbox Code Playgroud)
请告知是否有任何案件未被承保.
从帮助文件vector:
vector产生给定长度和众数的向量。
...用法
vector(mode = "logical", length = 0)
如果运行代码vec <- vector()并对其求值,vec则返回logical(0)。大小为 0 的逻辑向量。这是有道理的,看看函数的默认参数vector是如何的vector(mode="logical", length=0)。
如果你检查length(vec),我们知道向量的长度也是 0,这意味着我们的向量 ,vec是空的。
如果你想创建其他类型的非type向量,也可以阅读usinglogical的帮助文件。您会发现将生成一个空字符向量,将生成一个空整数向量,等等。vector?vectorvector(mode='character')vector(mode='integer')
您还可以通过调用其他“原子模式”的名称来创建空向量,如帮助文件中对它们的调用:
character(),integer(),numeric()/ double(),complex(),character(), 和raw()。