принуждение таблицы ANOVA к табличному объекту R

Я запускаю много таблиц ANOVA и в конечном итоге хотел бы запустить их через функцию «xtable» в пакете xtable для экспорта в LaTeX. Однако мне нужно предоставить xtable объект таблицы, он не примет объект ANOVA. Я в основном хочу сделать таблицу ANOVA как объект таблицы. Вот некоторый воспроизводимый код:

utils::data(npk, package="MASS")
npk.aovE <- aov(yield ~  N*P*K + Error(block), npk)
summary(npk.aovE) ## THIS IS THE TABLE I WANT AS A TABLE OBJECT

Я пробовал все обычные подозреваемые (as.table, print и xtable(summary(npk.aoE))) безуспешно. Любая помощь будет принята с благодарностью


person LoveMeow    schedule 21.09.2012    source источник
comment
Предоставляет ли xtable(npk.aovE) то, что вам нужно?   -  person mnel    schedule 21.09.2012
comment
Или, может быть, lapply(summary(npk.aoE), xtable))   -  person mnel    schedule 21.09.2012
comment
Да, xtable(npk.aovE) предоставляет то, что я хочу! Извините за массовую оплошность!   -  person LoveMeow    schedule 21.09.2012


Ответы (1)


Обычно люди хотят, чтобы матрица была получена с помощью:

 coef( summary(npk.aovE) )  # which returns NULL

Как сказано на странице справки: «Функция coef извлечет матрицу коэффициентов со стандартными ошибками, t-статистикой и p-значениями». К сожалению, теория и практика не всегда совпадают. Этот сводной объект на самом деле представляет собой два фрейма данных, и его поведение описано в ?summary.aovlist :

> summary(npk.aovE)[[2]]
          Df Sum Sq Mean Sq F value  Pr(>F)   
N          1 189.28  189.28  12.259 0.00437 **
P          1   8.40    8.40   0.544 0.47490   
K          1  95.20   95.20   6.166 0.02880 * 
N:P        1  21.28   21.28   1.378 0.26317   
N:K        1  33.14   33.14   2.146 0.16865   
P:K        1   0.48    0.48   0.031 0.86275   
Residuals 12 185.29   15.44                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 
> summary(npk.aovE)[[1]]
          Df Sum Sq Mean Sq F value Pr(>F)
N:P:K      1   37.0   37.00   0.483  0.525
Residuals  4  306.3   76.57               
person IRTFM    schedule 21.09.2012