我正在尝试运行bas.lm模型,我想指定一个空模型,但是我不理解其中的一部分代码
我已经建立了几乎整个模型,但我希望第一个模型只包含预测变量1、2、3,而第二个模型则包含所有3个以上新的预测变量。为此,我认为使用了“ bestmodel”参数,但我不知道它是如何工作的。该文档说:“可选的二进制矢量,代表用于初始化采样的模型。如果NULL采样以null模型开始,”并且null的源代码为
bestmodel <- c(1, rep(0, p - 1))
但是我不知道如何更改它以引用我的变量
这是当前具有数据和结果的模型:
Mean_Accuracy Predictor1 Predictor2 Predictor3 NewPredictor
0.73 3 7 6 8
0.50 4 5 1 5
0.86 1 3 4 1
Accuracy <- bas.lm(Mean_Accuracy ~ .,
data = df,
method = "BAS",
bestmodel = NULL,
prior = "JZS",
include.always = Mean_Accuracy ~ Predictor1 + Predictor2 + Predictor3,
#bestmodel = c(?,?),
modelprior = uniform())
summary(Accuracy)
P(B != 0 | Y) model 1 model 2
Intercept 1 1.0000 1.000000e+00
NewPredictor 1 1.0000 0.000000e+00
Predictor1 1 1.0000 1.000000e+00
Predictor2 1 1.0000 1.000000e+00
Predictor3 1 1.0000 1.000000e+00
BF NA 1.0000 4.642017e-139
PostProbs NA 1.0000 0.000000e+00
R2 NA 0.3506 2.710000e-01
dim NA 7.0000 6.000000e+00
logmarg NA 1179.9872 8.614630e+02
我想要的是第二个模型首先作为BF = 1的null出现。有没有办法相应地修改代码?