以下のサンプルコードで、いくつかのNA値を持つデータフレームを作成した場所を確認してください。私のcolnames(test)[colSums(is.na(test))>0]
はNAの値を持つ列の名前を私に与えます。私の質問は、私はサブセットのための数値または論理値を与える必要がある列名をサブセットするときですが、私は私のcolSumsが私に2つの出力を与えることに気付いた、論理的なもう1つは列自体の名前です。 colnamesは、私のcolSumsの論理部分だけをどのように取るのですか?ここRコロンと数値を論理値に変換する
test <- data.frame(matrix(rnorm(50), nrow = 5, ncol = 10))
colnames(test) <-c("xOne", "xtwo", "x3", "x4","x5","xsix","x7","x8","xnine","x10")
test$x5[3:4] <-NA
colnames(test)[colSums(is.na(test))>0]
は、実際には出力が論理ベクトルである0
xOne xtwo x3 x4 x5 xsix x7 x8 xnine x10
FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE
それぞれの結果に列が一致する名前の示す属性です。 'str(colSums(is.na(test))> 0)' –
を参照してください。ドクターは言ったように、まだ論理値のベクトルを返すだけです。それはちょうど名前付きのベクトルなので、出力を見るのです。これはあなたのベクトルには影響しませんが、それは各アイテムに名前を付けることのできるベクターの機能です。 – giraffehere
お互いにありがとう。私は今、論理ベクトルの名前の特徴を知っていました。 – XXavier