2
我需要在公式的每個變量上執行循環。我的公式是:R - 訪問公式變量
> lr$formula
target ~ grupoAntig + nu_seguros_1TRUNC + cd_sexo + grupoEdad +
vl_limite_aeQU + vl_ltd_6QU + Revolv3 + nu_servicios_1TRUNC +
fl_cliente_hit + nu_resumen_6 + fl_rv
我想運行每個變量的ddply。像 'grupoAntig' 以下:
> ddply(muestra, .(grupoAntig), summarise, ratioTarget=sum(target)/length(target))
grupoAntig ratioTarget
1 20a40 0.01038062
2 h20 0.01201201
3 m40 0.00785325
所以我就開始做創建的變量列表:
formula<-gsub(" ", "",as.character(lr$formula))
vars<-unlist(strsplit(formula, "[+]"))
如果讓我選擇瓦爾[3]我得到:
> vars[3]
[1] "grupoAntig"
而在ddply(plyr庫)中,我需要引入變量名稱而不用分號。所以,我想:
> as.name(vars[3])
grupoAntig
但是當我嘗試它裏面ddply:
library(plyr)
ddply(muestra, .(as.name(vars[3])), summarise, ratioTarget=sum(target)/length(target))
我得到一個錯誤信息:
錯誤unique.default(X):
如何在ddply中使用每個變量名稱?