94

Rで長さゼロの数値ベクトルを作成するにはどうすればよいですか?

4

4 に答える 4

112

vector(or numericor logicalor characteror integeror double, 'raw' or etc )のヘルプを読むと、それらすべてに(or引数がデフォルトで 0 にcomplexなる) があることがわかります。lengthlength.out

したがって

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 に答える