测试R中的命名字符(0)向量
我有一个函数,它返回R中的以下向量测试R中的命名字符(0)向量,r,R,我有一个函数,它返回R中的以下向量 vec #named character(0) 因为它是一个命名向量,所以我无法在它上面测试以下内容 is.na() is.null is.null(vec) # [1] FALSE 相同(向量,字符(0) 如何对其编写测试以检查它是否是命名字符(0)向量,然后将其分配给空值?对我来说,它通过检查命名字符的长度是否等于零来工作: if (length(vec) == 0) { vec <- NA } if(长度(vec)==0){ veci
vec
#named character(0)
因为它是一个命名向量,所以我无法在它上面测试以下内容
is.na()
is.null
is.null(vec)
# [1] FALSE
相同(向量,字符(0)
如何对其编写测试以检查它是否是命名字符(0)向量,然后将其分配给空值?对我来说,它通过检查命名字符的长度是否等于零来工作:
if (length(vec) == 0) {
vec <- NA
}
if(长度(vec)==0){
vecis.character(x)&&length(x)==0&&is.null(attr(x,“name”))
但是,你真的想检查所有这些吗?听起来检查length(x)==0
就足够了?我想检查length(x)==0
应该足够了,因为在我的例子中,我已经知道它是一个字符向量。Thankshow您是否指定了长度0vector@rawr可能通过子集设置:str(c(a=1)[FALSE])
identical(vec,character(0)
# [1] FALSE
if (length(vec) == 0) {
vec <- NA
}