2012-09-27 58 views

回答

45

简单:

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

如果你读了vector帮助(或numericlogicalcharacterintegerdouble,“原始”或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

我对投票表示歉意;这完全是偶然的,我只是注意到它发生了。它不会让我改变。抱歉。 –

+1

如果空矢量打算保存日期,你会用什么? – Zelbinian

+0

@Zelbinian这是一个好奇心。你在做什么试图达到什么目的? –

3

假设你想创建一个长度为零的向量x。现在让v是任何向量。

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

这是为什么这个标记? – HattrickNZ

+1

为什么我的邮件标记失效? –

+1

我不知道那里发生了什么。我的答案再一次被记录下来。为什么???我想知道解释。任何人都可以给我回答为什么我的回答记下来? –

1

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

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