3 回答

TA貢獻(xiàn)1843條經(jīng)驗(yàn) 獲得超7個(gè)贊
如果我理解正確,你有一個(gè)包含變量名稱的向量,并希望遍歷每個(gè)名稱并按它們對(duì)數(shù)據(jù)框進(jìn)行排序。如果是這樣,這個(gè)例子應(yīng)該為您說(shuō)明一個(gè)解決方案。你的主要問(wèn)題(完整的例子不完整,所以我不確定你可能缺少什么)是它應(yīng)該是,order(Q1_R1000[,parameter[X]])而不是order(Q1_R1000$parameter[X]),因?yàn)閰?shù)是一個(gè)外部對(duì)象,包含一個(gè)與直接列相對(duì)的變量名您的數(shù)據(jù)框(當(dāng)$適當(dāng)時(shí))。
set.seed(1)
dat <- data.frame(var1=round(rnorm(10)),
var2=round(rnorm(10)),
var3=round(rnorm(10)))
param <- paste0("var",1:3)
dat
# var1 var2 var3
#1 -1 2 1
#2 0 0 1
#3 -1 -1 0
#4 2 -2 -2
#5 0 1 1
#6 -1 0 0
#7 0 0 0
#8 1 1 -1
#9 1 1 0
#10 0 1 0
for(p in rev(param)){
dat <- dat[order(dat[,p]),]
}
dat
# var1 var2 var3
#3 -1 -1 0
#6 -1 0 0
#1 -1 2 1
#7 0 0 0
#2 0 0 1
#10 0 1 0
#5 0 1 1
#8 1 1 -1
#9 1 1 0
#4 2 -2 -2
- 3 回答
- 0 關(guān)注
- 793 瀏覽
添加回答
舉報(bào)