Как изменить вектор в модельной функции BAS (R) - PullRequest
1 голос
/ 19 июня 2019

Я пытаюсь запустить модель bas.lm и хочу указать нулевую модель, но я не понимаю один бит кода

Я построил почти всю модель, но я хочу, чтобы первая была только с предикторами 1, 2, 3, а вторая - со всеми 3 + новыми предикторами. Для этого я думаю, что используется аргумент "bestmodel", но я не понимаю, как он работает. Документация гласит: «необязательный двоичный вектор, представляющий модель для инициализации выборки. Если выборка 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

Все, что я хочу, это чтобы 2-я модель была первой как ноль с BF = 1. Есть ли способ изменить код соответственно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...