如何在R中创建零长度的数值向量

时间:2012-09-27 05:58:15

标签: r vector numeric zero

我想知道,如何在R?

中创建数字零长度向量

4 个答案:

答案 0 :(得分:106)

如果您阅读了vector(或numericlogicalcharacterintegerdouble,'raw'或complex等)然后您会看到它们都有length(或length.out参数,默认为0

因此

numeric()
logical()
character()
integer()
double()
raw()
complex() 
vector('numeric')
vector('character')
vector('integer')
vector('double')
vector('raw')
vector('complex')

所有返回适当原子模式的0长度向量。

# the following will also return objects with length 0
list()
expression()
vector('list')
vector('expression')

答案 1 :(得分:54)

简单地:

x <- vector(mode="numeric", length=0)

答案 2 :(得分:4)

假设您要创建长度为零的向量x。现在让v为任何向量。

> v<-c(4,7,8)
> v
[1] 4 7 8
> x<-v[0]
> length(x)
[1] 0

答案 3 :(得分:3)

这不是一个非常漂亮的答案,但它是我用来创建零长度向量的东西:

0[-1]     # numeric
""[-1]    # character
TRUE[-1]  # logical
0L[-1]    # integer

文字是长度为1的向量,[-1]从向量中移除第一个元素(在本例中仅为 元素),留下一个零元素的向量。

作为奖励,如果您想要相应类型的单个NA

0[NA]     # numeric
""[NA]    # character
TRUE[NA]  # logical
0L[NA]    # integer