Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
测试R中的命名字符(0)向量_R - Fatal编程技术网

测试R中的命名字符(0)向量

测试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

我有一个函数,它返回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){

vec
is.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
}