【发布时间】:2016-03-06 16:39:27
【问题描述】:
我可以构造一个公式,从公式中术语的字符版本开始执行我想要的操作,但我在从公式对象开始时遇到了困难:
form1 <- Y ~ A + B
form1[-c(1,2)][[1]]
#A + B
现在如何构建一个如下所示的公式对象:
Y ~ poly(A, 2) + poly(B, 2) + poly(C, 2)
或者:
Y ~ pspline(A, 4) + pspline(B, 4) + pspline(C, 4)
似乎它可能涉及沿 RHS 的递归遍历,但我没有取得进展。我突然想到我可能会使用
> attr( terms(form1), "term.labels")
[1] "A" "B"
然后使用as.formula(character-expr) 方法,但我很抱歉看到polyize(或者可能是polymer?)函数的lapply (RHS_form, somefunc) 版本。
【问题讨论】: