データフレーム内のいくつかの変数のインデックスが必要ですが、grep()
スキルが不十分です。
このデータフレームがあるとしましょう。
( dfn <- data.frame(
a1 = c(3, 3, 0, 3, 0, 0),
a2 = c(1, NA, 0, NA, 1, 4),
a11 = c(0, 3, NA, 1, 3, 1),
a12 = c(0, 3, NA, 1, 3, 3),
a_12 = c(0, 3, NA, 1, NA, NA),
a_1 = c(12, 3, NA, 1, 4, NA)) )
a1 a2 a11 a12 a_12 a_1
1 3 1 0 0 0 12
2 3 NA 3 3 3 3
3 0 0 NA NA NA NA
4 3 NA 1 1 1 1
5 0 1 3 3 NA 4
6 0 4 1 3 NA NA
さて、私が欲しいのは、a1、a2、a11、およびa12をgrepすることです(実際には、a
'の後の#は1から12までの連続したリストです)、どうすればよいですか?以下の2つのgrepを試しましたが、うまくいきませんでした。
foo <- grep('a[1:12]$', names(dfn) )
names(dfn[,foo])
[1] "a1" "a2"
私もこれを試しました、
bar <- grep('a[c(1:12)]$', names(dfn) )
names(dfn[,bar])
[1] "a1" "a2"
私が欲しいのは
[1] "a1" "a2" "a11" "a12"
第二に、誰かが私を良いgrep()
チュートリアルに導くことができますか?ありがとう!