我想知道,如何在 R 中创建数字零长度向量?
问问题
206914 次
4 回答
112
如果您阅读vector
(or numeric
or logical
or or character
or integer
or double
, 'raw' or complex
etc ) 的帮助,那么您会看到它们都有一个length
(orlength.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')
于 2012-09-27T06:09:26.870 回答
57
简单地:
x <- vector(mode="numeric", length=0)
于 2012-09-27T06:04:43.437 回答
4
假设您要创建一个长度为零的向量 x。现在让 v 是任何向量。
> v<-c(4,7,8)
> v
[1] 4 7 8
> x<-v[0]
> length(x)
[1] 0
于 2014-06-23T14:28:49.677 回答
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
于 2016-09-28T15:04:02.403 回答