我正在尝试创建泛型函数来处理具有多个似然值的数据框。我想是一个式传递给一个函数执行回归如:更改公式中变量的名称
f <- MRPCM ~ DSEX + IEP + ELL3 + SDRACEM + PARED
的MRPCM
变量不实际存在于数据帧。取而代之的是五个变量:MRPCM1
,MRPCM2
,MRPCM3
,MRPCM4
和MRPCM5
确实存在。我想要做的是迭代并更新公式(此处为f
)以创建五个公式。这可以做到吗? update.formula
函数似乎一次可以在整个左侧或右侧工作。我也应该注意到,在这个例子中,我希望改变的变量是因变量,所以update(f, MRPCM1 ~ .)
工作。但是,我不知道变量在公式中出现的位置。
例如:
f <- MRPCM + DSEX ~ IEP + ELL3 + SDRACEM + PARED
update.formula(f, as.formula('MRPCM1 ~ .'))
结果在这(请注意,现在DSEX丢失):
MRPCM1 ~ IEP + ELL3 + SDRACEM + PARED
从哪里可以得到合理的变量名? – Chase 2012-07-16 19:47:28
另请参阅'?as.formula'下的示例将字符串粘贴在一起并将其转换为公式。在理论上,应该可能做你想做的 - 让你的问题[reproducible](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example),我们会找到肯定的。 – Chase 2012-07-16 19:49:04