Rの固定長でベクトルを初期化する方法は??
たとえば、10 ??の長さの文字のベクトルが必要です。
?vector
X <- vector(mode="character", length=10)
これにより、空の文字列が得られます。場所ごとにインデックスを作成できます。文字数に制限はありませんので、10文字の要素を取得することを期待していた場合、失望するでしょう。
> X[5] <- "character element in 5th position"
> X
[1] "" ""
[3] "" ""
[5] "character element in 5th position" ""
[7] "" ""
[9] "" ""
> nchar(X)
[1] 0 0 0 0 33 0 0 0 0 0
> length(X)
[1] 10
ゼロ以外の数値でベクトルを初期化する場合は、rep
を使用します
n <- 10
v <- rep(0.05, n)
v
あなたに与えます:
[1] 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05
覚えやすい初期化方法は
vec = vector(,10); #the same as "vec = vector(length = 10);"
Vecの値は次のとおりです。デフォルトでは「[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE」(論理モード)。
しかし、次のような文字値を設定した後
vec[2] = 'abc'
vecは、「FALSE」「abc」「FALSE」「FALSE」「FALSE」「FALSE」「FALSE」「FALSE」「FALSE」「FALSE」」の文字モードです。
完全を期すために、必要なデータ型を取得し、次のように要素の数で括弧を追加することができます。
x <- character(10)