如何在 R 中对多项式回归建模?

How to model polynomial regression in R?

我有一个包含 70 个变量的数据集,我想对其进行多项式回归。如果列数是 three/four 我可以手写这样的代码 --

 model <- lm(y ~ poly(var1,3) + poly(var2,3) + poly(var4,4)

如果我们有 70 个变量,我们将如何处理?我们应该手动输入所有变量的名称还是有更简单的方法?

如果所有变量都系统命名,您可以粘贴公式:

form <- as.formula(paste("y~", paste0("poly(var", 1:10, ")", collapse="+")))

或(对于 3 次多项式):

form <- as.formula(paste("y~", paste0("poly(var", 1:10, ", degree=3)", collapse="+")))

此外,如果您的数据集 df 中只有因变量 y 和感兴趣的协变量(具有非系统名称),您可以尝试

ind.y <- grep("y", colnames(df))
form <- as.formula(paste("y~", paste0("poly(", colnames(df[, -ind.y]), ", degree=3)", collapse="+")))