问题 使用BIC标准运行逐步线性模型


是否可以设置逐步线性模型以使用BIC标准而不是AIC?

我一直在尝试这个,但它仍然使用AIC值而不是BIC计算每一步

null = lm(data[,1] ~ 1)
full = lm(data[,1] ~ age + bmi + gender + group)
step(null, scope = list(lower=null,upper=full),
     direction="both", criterion = "BIC")

8101
2017-10-16 10:04


起源



答案:


添加参数 k=log(n) 到了 step 功能(n 模型矩阵中的样本数)

?step

参数:
  ...

ķ 用于惩罚的自由度数的倍数。   只有k = 2才能得到真正的AIC;有时会提到k = log(n)   作为BIC或SBC。


15
2017-10-16 10:45



n 是必须知道的观察数量,而 k 是每个要使用的参数的惩罚的数值。


答案:


添加参数 k=log(n) 到了 step 功能(n 模型矩阵中的样本数)

?step

参数:
  ...

ķ 用于惩罚的自由度数的倍数。   只有k = 2才能得到真正的AIC;有时会提到k = log(n)   作为BIC或SBC。


15
2017-10-16 10:45



n 是必须知道的观察数量,而 k 是每个要使用的参数的惩罚的数值。