2013-04-15 2 views
1

Я запустить ANOVA, используя следующий код:экстракт из остатков AOV()

aov2 <- aov(amt.eaten ~ salt + Error(bird/salt),data) 

Если я использую view(aov2) я могу видеть остатки в структуре aov2, но я хотел бы, чтобы извлечь их в способ, который не предусматривает резки и склеивания. Может ли кто-нибудь помочь мне с синтаксисом?

Различные варианты residuals(aov2) Я использую только производят NULL

+0

Какие пакеты вы используете? Сделайте любой из них псевдоним объекта aov, потому что метод остатков работает для объектов anova в базе R. – AdamO

+0

Нет пакетов: весь скрипт является базовым R – Luke

+0

Можете ли вы добавить вывод 'dput (head (data))'? Запуск примера 'utils :: data (npk, package =" MASS "); a <- aov (члены (yield-block + N * P + K, keep.order = TRUE), npk) 'дает мне объект ANOVA, для которого работает остаточное извлечение. – AdamO

ответ

1

Я просто узнать, что вы можете использовать proj:

x1 <- gl(8, 4)    
block <- gl(2, 16)  
y <- as.numeric(x1) + rnorm(length(x1))   
d <- data.frame(block, x1, y)  

m <- aov(y ~ x1 + Error(block), d)   
m.pr <- proj(m)     
m.pr[[3]][, "Residuals"] 

Я пытаюсь проверить этот подход, но это, кажется, самый простой способ.

1

Причина, по которой вы не можете извлечь остатки от этой модели является то, что вы указали случайный эффект за счет соотношения птиц соли (???). Здесь каждая уникальная комбинация птиц и соли рассматривается как случайный кластер, имеющий уникальное значение перехвата, но общий аддитивный эффект, связанный с единичной разницей в соли и количеством съеденного.

Я не могу понять, почему мы хотели бы указать это значение как случайный эффект в этой модели. Но для того, чтобы разумно анализировать остатки, вы можете рассчитать соответствующие различия в каждой страте в соответствии с установленной моделью и оптимальным перехватом. Я думаю, что это утомительная работа и не очень информативная.

Смежные вопросы