ANOVA с 3 фиксированными коэффициентами в R - PullRequest
2 голосов
/ 15 марта 2010

Я пытаюсь запустить модель с переменной отклика p и 3 фиксированными коэффициентами, чтобы получить ANOVA. Вот как выглядит мой код:

#run it as 3 fixed factor model 
p1=c(37,38,37,41,41,40,41,42,41)
p2=c(42,41,43,42,42,42,43,42,43)
p3=c(30,31,31,31,31,31,29,30,28)
p4=c(42,43,42,43,43,43,42,42,42)
p5=c(28,30,29,29,30,29,31,29,29)
p6=c(42,42,43,45,45,45,44,46,45)
p7=c(25,26,27,28,28,30,29,27,27)
p8=c(40,40,40,43,42,42,43,43,41)
p9=c(37,38,37,41,41,40,41,42,41)
p10=c(35,34,34,35,35,34,35,34,35)
p = cbind(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10)
partnumber=c(rep(1,9),rep(2,9),rep(3,9),rep(4,9),rep(5,9),rep(6,9),rep(7,9),rep(8,9),rep(9,9),rep(10,9))
test=c(rep(c(rep(1:3,3)),10))
inspector = rep(c(rep(1,3),rep(2,3),rep(3,3)),10)
fpartnumber = factor(partnumber)
ftest = factor(test)
finspector = factor(inspector)
model=lm(p~fpartnumber*ftest*finspector)
summary(model)
anova(model)

но когда я запускаю его, я получаю эту ошибку: он говорит, что моя длина переменной для fpartnumber отличается, но когда я проверял длину каждой переменной и равен 90. Что происходит?

модель = лм (у ~ fpartnumber FTEST finspector) Ошибка в model.frame.default (формула = yang ~ fpartnumber * ftest * finspector,: переменные длины отличаются (найдено для 'fpartnumber')

1 Ответ

2 голосов
/ 15 марта 2010

Если вы не хотите cbind p1 ... p10.

Тогда попробуйте:

data.frame(p, fpartnumber, ftest, finspector)

и:

str(p)

Использование:

p = c(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10) 

вместо

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