如何使用for循环对不同程度的不同多项式回归模型的结果进行方差分析
我对R很陌生,我认为我的问题很简单,但我似乎无法解决它。我在这里看到过类似的问题,但我似乎无法找到解决我具体问题的方法 我正在使用作为ISLR包一部分的工资数据集,尝试将工资建模为不同多项式度的年龄函数如何使用for循环对不同程度的不同多项式回归模型的结果进行方差分析,r,R,我对R很陌生,我认为我的问题很简单,但我似乎无法解决它。我在这里看到过类似的问题,但我似乎无法找到解决我具体问题的方法 我正在使用作为ISLR包一部分的工资数据集,尝试将工资建模为不同多项式度的年龄函数 library(ISLR) attach(Wage) 我正在对10岁以下的人的工资进行回归,然后我想对每个模型进行方差分析,并调查结果。我得到的最接近的是这个 for (i in 1:10) { fit[[i]] <- lm(wage~poly(age, i) , da
library(ISLR)
attach(Wage)
我正在对10岁以下的人的工资进行回归,然后我想对每个模型进行方差分析,并调查结果。我得到的最接近的是这个
for (i in 1:10) {
fit[[i]] <- lm(wage~poly(age, i) , data = Wage)
result[[i]] <- aov(as.formula(paste(fit[i], "~ wage")))
}
变量列表的类型(列表)无效(系数=c((截距)
=111.703608201744,poly(年龄,i)
=447.067852758315),残差=c(231655
=-19.3925481434428,86582
=-28.2033380861585,161300
=17.4500251413464,155159
=42.5676926169455,11443
=-42.02537778623369,376662
=7.21810821763668,601
=56.706172921,37798
31081863092,81404
=10.197404483506,302778
=3.61466467869064,305706
=-24.4688637359983,8690
=-16.9669134309657,153561
=25.41687845505336,449654
=14.807739524331,447660
-27.293894457631,
=95.773820436023,301585
=7.84450555272621,153682
=-9.2746009460634,158226
=91.9620415895517,11141
=-59.5891117312741,448410
=-49.3664897185768,305116
=50.6467025728133,233002
=-89518,<代码>229379
=-28.0716427246922,86064
=-40.6412633049063,378472
=-5.7541393181888,`1
任何帮助都将是非常感激的,并为自己是这样一个鲁莽的人而道歉
谢谢!!要回答您的问题,您可以:
library(ISLR)
attach(Wage)
fit <- vector("list",10)
result <- vector("list",10)
for (i in 1:10) {
thisForm <- paste0("wage~poly(age, ",i,")")
fit[[i]] <- lm(thisForm , data = Wage)
result[[i]] <- aov(fit[[i]])
}
要回答您的问题,您可以执行以下操作:
library(ISLR)
attach(Wage)
fit <- vector("list",10)
result <- vector("list",10)
for (i in 1:10) {
thisForm <- paste0("wage~poly(age, ",i,")")
fit[[i]] <- lm(thisForm , data = Wage)
result[[i]] <- aov(fit[[i]])
}
它非常有效,你的解释对我的理解非常有帮助。非常感谢。很酷。很高兴它对你有用:)它非常有效,你的解释对我的理解非常有帮助。非常感谢。很酷。很高兴它对你有用:)
coefficients(result[[1]]) ; coefficients(fit[[1]])
(Intercept) poly(age, i)
111.7036 447.0679
(Intercept) poly(age, i)
111.7036 447.0679