R语言的integer(0)
举个例子
>x1=c(4,5)>which(x1==3)integer(0)> length(integer(0))[1] 0
可以看出当which() 函数没有符合条件的返回值时会返回integer(0)
虽然看起来integer(0)和NULL表示的含义是很像的,但实际上两者是完全不同的:
integer(0)是一个整数向量,长度为0;NULL表示的是空的意思
integer(0),numeric(0),logical(0),NULL,NA 的区别
logical(0) 不等于 numeric(0)。两者都不是NULL值,即is.null(logical(0))和is.null(numeric(0))都会返回FALSE。说明长度为零的值有时却不会为空值,NULL的定义是函数中没有被赋值的参数,特征就是没有值。如何区分NULL和NA?很简单,后者的logical length是1,而前者的logical length是0,意思是假如用is.logical判断NA的逻辑值,得到的结果是TRUE。NA可以为正无穷或负无穷,但NULL永远代表的是没有这个值,一个空集的概念。
总的来说:
numeric(0) == numeric(0)和numeric(0) != numeric(0),返回TRUE。logical(0),numeric(0),NULL,返回FALSE。is.logical(NA),返回TRUE。
