我有一个公式对象form1
form1 = y ~ 1 + x*y
Run Code Online (Sandbox Code Playgroud)
我想在这个公式中添加一个术语,比如+ z,这样我的form2就变成了
form2 = y ~ 1 + x*y + z.
Run Code Online (Sandbox Code Playgroud)
我找到了一种非常麻烦的方法:
terms.form1 <- terms(form1)
terms.labels <- attr(terms.form1,"term.labels")
old.terms <- paste(terms.labels,collapse=" + ")
updated.terms <- paste(old.terms," + z",collapse=" + ")
form2 = as.formula(paste(as.character(form1[[2]]),"~",updated.terms,collapse=""))
Run Code Online (Sandbox Code Playgroud)
虽然这给了我form2,但我想知道是否有更简单的方法来做到这一点.
先感谢您!
ags*_*udy 15
你应该使用update.formula:
update(y ~ 1 + x*y, ~ . + z)
y ~ x + y + z + y:x
Run Code Online (Sandbox Code Playgroud)
该. 手段"什么是以前在公式中该部分".