我正在构建一系列逐步回归(正向,反向和双向),以了解薪酬(根据Mincer方程构建)与不同学历之间的关系。所有这些模型都没有通过Durbin-Watson统计,因此我不确定估计系数的置信度。
为解决此问题,我一直在尝试使用R中的boot
包来实现引导方法来生成置信区间。下面是在阅读了“ forward”模型后为“ forward”模型编写的代码示例boot
中的帮助文件。
bootstrap_fwd.model<- function(data, indices, maxit=20){
data<- data[indices,]
mod<- step(glm(log(EAC) ~ 1,family = gaussian, na.action = na.omit, data=data, maxit=maxit, trace = FALSE ), direction = "forward",
scope = ~ EduLevel + poly(YE, 2, raw = TRUE) + Attendance + Internship + Internship_Length + JobSearch + CS_Bach + CS_Mast + Gender +
Attendance * JobSearch + Attendance * CS_Bach + Attendance * CS_Mast + CS_Bach * CS_Mast + Attendance * Gender +
Gender * CS_Bach + Gender * CS_Mast)
coefficients(mod) #return coefficients vector
}
boot.fwd<- boot(data_simple, bootstrap_fwd.model, 500, maxit=100)
当我在一夜之间运行这段代码时,我似乎从未生成过boot.fwd
。
我的问题是:
这是引导参数系数周围的置信区间正确的代码吗?在定义函数方面哪里出问题了?
一旦我能够生成boot.fwd
,我应该使用boot.ci
函数来估计上下限吗?我将获得所有参数的置信区间吗?
输出将是什么样?应该如何解释不同的情况?
感谢您的所有帮助!