web-dev-qa-db-ja.com

Rで長さゼロの数値ベクトルを作成する方法

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

90

単に:

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

長さがゼロのベクトルxを作成するとします。ここで、vを任意のベクトルとします。

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

これはあまり美しい答えではありませんが、長さゼロのベクトルを作成するために使用するものです。

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

リテラルは長さ1のベクトルで、[-1]は最初の要素(この場合はonly要素)をベクトルから削除し、要素がゼロのベクトルを残します。

ボーナスとして、それぞれのタイプの単一のNAが必要な場合:

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