9

何をすべきかを暗示する変数名を組み込みたいと思います。データフレームの「調査」を想像します。

library(Rlab) # Needed for rbern() function.
survey <- data.frame(cbind(  
id = seq(1:10),  
likert_this = sample(seq(1:7),10, replace=T),  
likert_that = sample(seq(1:7), 10, replace=T),  
dim_bern_varx = rbern(10, 0.6),  
disc_1 = sample(letters[1:5],10,replace=T)))

ここで、 liketを含むすべての変数で特定のことをしたいと思います、 bernなどを含む変数で他のことをしたいと思います。

これはRでどのように行うことができますか?

4

3 に答える 3

16

grep()で使用できますcolnames()

survey[,grep("bern", colnames(survey))]
于 2009-09-09T23:24:30.027 に答える
3

取得したい一連の名前がある場合は、match を使用することもできます。おそらく、変数「脈拍」、「運動」、「身長」、「体重」、「年齢」が必要になることがよくありますが、それらは別の場所に表示されたり、他の変数が追加されたりすることがあります。一般的な名前のベクトルを保存し、それらをデータフレームと照合して、標準列だけの新しい df を必要な順序で作成できます。

basenames <- c("pulse", "exercise", "height", "weight", "age")
get.columns <- match(basenames, names(dataframe))
new.df <- dataframe[,get.columns]
于 2009-09-10T19:10:37.327 に答える
2

「operators」パッケージでは、Perl に似た構文が使用できます。

library(operators)

survey[, colnames(survey) %~% "bern"]

また

subset(survey, select = colnames(survey) %~% "bern")
于 2009-09-11T01:45:37.763 に答える