В R при использовании lm()
, если я установил na.action = na.pass
внутри вызова lm()
, то в сводной таблице есть NA для любого коэффициента, который нельзя оценить (поскольку недостающих ячеек в этом случае).Различные действия NA для коэффициентов и сводка линейной модели в R
Если, однако, я извлекаю только коэффициенты из суммарного объекта, используя либо summary(myModel)$coefficients
, либо coef(summary(myModel))
, тогда NA не указаны.
Я хочу, чтобы NA включались, когда я извлекаю коэффициенты так же, как они включены, когда я печатаю резюме. Есть ли способ сделать это?
options(na.action = na.pass)
, похоже, не помогает.
Вот пример:
> set.seed(534)
> myGroup1 <- factor(c("a","a","a","a","b","b"))
> myGroup2 <- factor(c("first","second","first","second","first","first"))
> myDepVar <- rnorm(6, 0, 1)
> myModel <- lm(myDepVar ~ myGroup1 + myGroup2 + myGroup1:myGroup2)
> summary(myModel)
Call:
lm(formula = myDepVar ~ myGroup1 + myGroup2 + myGroup1:myGroup2)
Residuals:
1 2 3 4 5 6
-0.05813 0.55323 0.05813 -0.55323 -0.12192 0.12192
Coefficients: (1 not defined because of singularities)
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.15150 0.23249 -0.652 0.561
myGroup11 0.03927 0.23249 0.169 0.877
myGroup21 -0.37273 0.23249 -1.603 0.207
myGroup11:myGroup21 NA NA NA NA
Residual standard error: 0.465 on 3 degrees of freedom
Multiple R-squared: 0.5605, Adjusted R-squared: 0.2675
F-statistic: 1.913 on 2 and 3 DF, p-value: 0.2914
> coef(summary(myModel))
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.15149826 0.2324894 -0.6516352 0.5611052
myGroup11 0.03926774 0.2324894 0.1689012 0.8766203
myGroup21 -0.37273117 0.2324894 -1.6032180 0.2072173
> summary(myModel)$coefficients
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.15149826 0.2324894 -0.6516352 0.5611052
myGroup11 0.03926774 0.2324894 0.1689012 0.8766203
myGroup21 -0.37273117 0.2324894 -1.6032180 0.2072173
Спасибо за пояснения, что параметры na.action не относятся к этой проблеме. Извлечение коэффициентов из установленной модели может работать в крайнем случае, но я хотел связать пару столбцов для доверительных интервалов с суммарной таблицей. Мне не нужны только оценки; Я хочу стандартные ошибки, p-значения и т. Д., С доверительными интервалами, указанными в конце. Я мог бы просто сделать таблицу с нуля, но я подумал, что может быть какая-то простая настройка, которая нуждается в изменении, чтобы получить 'coef (summary (myModel))' и 'confint (myModel)' для вывода того же количества строк в том же порядке , – Jdub
@Jdub, вы поняли это? У меня точно такая же проблема. –
такой же здесь! та же проблема – vagabond