在统计编程语言R中,使用以下公式(例如lm()
或glm()
)
z ~ (x+y)^2
相当于
z ~ x + y + x:y
假设我只有连续的预测因子,是否有简明的方法来获得
z ~ I(x^2) + I(y^2) + I(x) + I(y) + I(x*y)
为因子预测器做正确事情的公式是一个加号。
一种可能的解决方案是
z ~ (poly(x,2) + poly(y,2))^2
我正在寻找更优雅的东西。
答案 0 :(得分:9)
我不知道它是否更优雅,但poly函数可以采用多个向量:
z ~ poly(x, y, degree=2)
这将创建您要求的所有组合,而无需其他组合。请注意,当这样做时,你需要指定degree = 2,而不仅仅是2。