Parcela subdividida: problema na declaração do erro associado a parcela

Pessoal, O CMR abaixo é da apostila do Walmes. #------------------------------------------------------------------------------------------ # dados ps <- expand.grid(BL=c("I", "II", "III", "IV"), ES=c("e1", "e2"), AD=c("a1", "a2", "a3")) ps$alt <- c(58,77,38,52,44,59,30,34,85,90,73,77,59,68,45,55,66,93,67,64,54,75,53,48) str(ps) # #------------------------------------------------------------------------------------------ # análise de variância (erro A = BL x AD) m0 <- aov(alt ~ BL + AD + Error(BL:AD) + ES + AD:ES, data=ps) # termo Error para declarar erro A m0 <- aov(alt ~ BL + AD * ES + Error(BL:AD), data=ps) # o mesmo com fórmula comprimida summary(m0) #------------------------------------------------------------------------------------------ Encontrei muitos outros exemplos (na web e em livros) com essa notação: Error(BL:AD) Contudo o R (3.0.2patched) não está aceitando essa notação! Fornece sempre a mensagem de erro: In aov(alt ~ BL + AD + Error(BL:AD) + ES + AD:ES, data = ps) : modelo Error() é singular Contudo o R está aceitando esse modelo: m0 <- aov(alt ~ BL + AD + Error(BL/AD) + ES + AD:ES, data=ps) Mas nesse caso o resíduo A (associado a bloco e parcela - AD) não fica correto. Alguém que anda trabalhando com esses modelos poderia ajudar? Ab, -- ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ Jose Claudio Faria Estatistica UESC/DCET/Brasil joseclaudio.faria at gmail.com Telefones: 55(73)3680.5545 - UESC 55(73)9100.7351 - TIM 55(73)8817.6159 - OI ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\

Mesmo com o aviso use o comando summary(m0) e o quadro será formado. Att. Tiago. ################################################################# Tiago de Souza Marçal - Graduando em Agronomia pelo CCA-UFES Bolsista de Iniciação Científica da área de Genética e Melhoramento de Plantas #################################################################
Date: Wed, 4 Dec 2013 18:20:19 -0200 From: joseclaudio.faria@gmail.com To: r-br@listas.c3sl.ufpr.br Subject: [R-br] Parcela subdividida: problema na declaração do erro associado a parcela
Pessoal,
O CMR abaixo é da apostila do Walmes.
#------------------------------------------------------------------------------------------ # dados ps <- expand.grid(BL=c("I", "II", "III", "IV"), ES=c("e1", "e2"), AD=c("a1", "a2", "a3")) ps$alt <- c(58,77,38,52,44,59,30,34,85,90,73,77,59,68,45,55,66,93,67,64,54,75,53,48) str(ps) # #------------------------------------------------------------------------------------------ # análise de variância (erro A = BL x AD) m0 <- aov(alt ~ BL + AD + Error(BL:AD) + ES + AD:ES, data=ps) # termo Error para declarar erro A m0 <- aov(alt ~ BL + AD * ES + Error(BL:AD), data=ps) # o mesmo com fórmula comprimida
summary(m0) #------------------------------------------------------------------------------------------
Encontrei muitos outros exemplos (na web e em livros) com essa notação: Error(BL:AD)
Contudo o R (3.0.2patched) não está aceitando essa notação! Fornece sempre a mensagem de erro: In aov(alt ~ BL + AD + Error(BL:AD) + ES + AD:ES, data = ps) : modelo Error() é singular
Contudo o R está aceitando esse modelo: m0 <- aov(alt ~ BL + AD + Error(BL/AD) + ES + AD:ES, data=ps)
Mas nesse caso o resíduo A (associado a bloco e parcela - AD) não fica correto.
Alguém que anda trabalhando com esses modelos poderia ajudar?
Ab, -- ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ Jose Claudio Faria Estatistica UESC/DCET/Brasil joseclaudio.faria at gmail.com Telefones: 55(73)3680.5545 - UESC 55(73)9100.7351 - TIM 55(73)8817.6159 - OI ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Verdade! Como deu erro eu não tentei rodar o summary. Muito obrigado Tiago! 2013/12/4 Tiago Souza Marçal <tiagosouzamarcal@hotmail.com>:
Mesmo com o aviso use o comando summary(m0) e o quadro será formado.
Att.
Tiago.
#################################################################
Tiago de Souza Marçal - Graduando em Agronomia pelo CCA-UFES
Bolsista de Iniciação Científica da área de Genética e Melhoramento de Plantas
#################################################################
Date: Wed, 4 Dec 2013 18:20:19 -0200 From: joseclaudio.faria@gmail.com To: r-br@listas.c3sl.ufpr.br Subject: [R-br] Parcela subdividida: problema na declaração do erro associado a parcela
Pessoal,
O CMR abaixo é da apostila do Walmes.
#------------------------------------------------------------------------------------------ # dados ps <- expand.grid(BL=c("I", "II", "III", "IV"), ES=c("e1", "e2"), AD=c("a1", "a2", "a3")) ps$alt <- c(58,77,38,52,44,59,30,34,85,90,73,77,59,68,45,55,66,93,67,64,54,75,53,48) str(ps) #
#------------------------------------------------------------------------------------------ # análise de variância (erro A = BL x AD) m0 <- aov(alt ~ BL + AD + Error(BL:AD) + ES + AD:ES, data=ps) # termo Error para declarar erro A m0 <- aov(alt ~ BL + AD * ES + Error(BL:AD), data=ps) # o mesmo com fórmula comprimida
summary(m0)
#------------------------------------------------------------------------------------------
Encontrei muitos outros exemplos (na web e em livros) com essa notação: Error(BL:AD)
Contudo o R (3.0.2patched) não está aceitando essa notação! Fornece sempre a mensagem de erro: In aov(alt ~ BL + AD + Error(BL:AD) + ES + AD:ES, data = ps) : modelo Error() é singular
Contudo o R está aceitando esse modelo: m0 <- aov(alt ~ BL + AD + Error(BL/AD) + ES + AD:ES, data=ps)
Mas nesse caso o resíduo A (associado a bloco e parcela - AD) não fica correto.
Alguém que anda trabalhando com esses modelos poderia ajudar?
Ab, -- ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ Jose Claudio Faria Estatistica UESC/DCET/Brasil joseclaudio.faria at gmail.com Telefones: 55(73)3680.5545 - UESC 55(73)9100.7351 - TIM 55(73)8817.6159 - OI ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ Jose Claudio Faria Estatistica UESC/DCET/Brasil joseclaudio.faria at gmail.com Telefones: 55(73)3680.5545 - UESC 55(73)9100.7351 - TIM 55(73)8817.6159 - OI ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\

Cláudio... isso não seria um warnings! É apenas para avisar que o a solução do sistema está vindo por uma inversa generalizada pois sua matriz de incidência não tem posto completo! 2013/12/4 Jose Claudio Faria <joseclaudio.faria@gmail.com>
Verdade!
Como deu erro eu não tentei rodar o summary.
Muito obrigado Tiago!
2013/12/4 Tiago Souza Marçal <tiagosouzamarcal@hotmail.com>:
Mesmo com o aviso use o comando summary(m0) e o quadro será formado.
Att.
Tiago.
#################################################################
Tiago de Souza Marçal - Graduando em Agronomia pelo CCA-UFES
Bolsista de Iniciação Científica da área de Genética e Melhoramento de Plantas
#################################################################
Date: Wed, 4 Dec 2013 18:20:19 -0200 From: joseclaudio.faria@gmail.com To: r-br@listas.c3sl.ufpr.br Subject: [R-br] Parcela subdividida: problema na declaração do erro associado a parcela
Pessoal,
O CMR abaixo é da apostila do Walmes.
#------------------------------------------------------------------------------------------
# dados ps <- expand.grid(BL=c("I", "II", "III", "IV"), ES=c("e1", "e2"), AD=c("a1", "a2", "a3")) ps$alt <-
c(58,77,38,52,44,59,30,34,85,90,73,77,59,68,45,55,66,93,67,64,54,75,53,48)
str(ps) #
#------------------------------------------------------------------------------------------
# análise de variância (erro A = BL x AD) m0 <- aov(alt ~ BL + AD + Error(BL:AD) + ES + AD:ES, data=ps) # termo Error para declarar erro A m0 <- aov(alt ~ BL + AD * ES + Error(BL:AD), data=ps) # o mesmo com fórmula comprimida
summary(m0)
#------------------------------------------------------------------------------------------
Encontrei muitos outros exemplos (na web e em livros) com essa notação: Error(BL:AD)
Contudo o R (3.0.2patched) não está aceitando essa notação! Fornece sempre a mensagem de erro: In aov(alt ~ BL + AD + Error(BL:AD) + ES + AD:ES, data = ps) : modelo Error() é singular
Contudo o R está aceitando esse modelo: m0 <- aov(alt ~ BL + AD + Error(BL/AD) + ES + AD:ES, data=ps)
Mas nesse caso o resíduo A (associado a bloco e parcela - AD) não fica correto.
Alguém que anda trabalhando com esses modelos poderia ajudar?
Ab, -- ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ Jose Claudio Faria Estatistica UESC/DCET/Brasil joseclaudio.faria at gmail.com Telefones: 55(73)3680.5545 - UESC 55(73)9100.7351 - TIM 55(73)8817.6159 - OI ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ Jose Claudio Faria Estatistica UESC/DCET/Brasil joseclaudio.faria at gmail.com Telefones: 55(73)3680.5545 - UESC 55(73)9100.7351 - TIM 55(73)8817.6159 - OI ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Toledo, Sim, vc está correto (acabei de verificar)! Como o Tinn-R emite um som de aviso em "warnings" e "erros" (por default) eu não observei que era um "warning". Achei que era um erro e não solicitei o "summary" subsequente. Muito obrigado pela observação! -- ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ Jose Claudio Faria Estatistica UESC/DCET/Brasil joseclaudio.faria at gmail.com Telefones: 55(73)3680.5545 - UESC 55(73)9100.7351 - TIM 55(73)8817.6159 - OI ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\

Essa mensagem de erro sempre aparece. Eu suponho que seja algo relacionado a matriz criada com cada especificação para o termo de erro. No CMR abaixo você vê o mesmo modelo declarado de duas diferentes formas. No final tem a matriz para os fatores usados no termo de R e como elas são matrizes diferentes (em conteúdo e dimensões) eu suponho que a origem do erro esteja atrelado à isso. Aí tem que abrir a fonte para ver o que de fato tá pegando. ps <- expand.grid(BL=c("I", "II", "III", "IV"), ES=c("e1", "e2"), AD=c("a1", "a2", "a3")) ps$alt <- c(58,77,38,52,44,59,30,34,85,90,73,77, 59,68,45,55,66,93,67,64,54,75,53,48) str(ps) ## modelo para experimento de parcelas subsdividas m0 <- aov(alt~BL+AD*ES+Error(BL:AD), data=ps) ## criando o fator parcela fora da aov ps$parcela <- with(ps, interaction(BL, AD)) ## mesmo modelo m1 <- aov(alt~BL+AD*ES+Error(parcela), data=ps) ## a mesma anova summary(m0) summary(m1) a <- model.matrix(~BL:AD, ps) dim(a) b <- model.matrix(~parcela, ps) dim(b) À disposição. Walmes.

Walmes, Ok, muito obrigado pelas dicas. Gostei também da segunda opção de análise: não conhecia ela no R! (tem a vantagem de não dar aviso) Quando vc tiver tempo poderia postar um exemplo de parcela sub-sub dividida com essas opções? Creio que ficaria como uma boa referência para o futuro da lista relativo a esses assuntos. Estamos retrabalhando os pacotes TukeyC e ScottKnott quanto a esses assuntos e é sempre bom ver idéias diferentes e complementares implementadas no R. Ab, -- ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ Jose Claudio Faria Estatistica UESC/DCET/Brasil joseclaudio.faria at gmail.com Telefones: 55(73)3680.5545 - UESC 55(73)9100.7351 - TIM 55(73)8817.6159 - OI ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\

No sentido de mostrar algumas alternativas, segue um CMR considerando modelos lineares de efeito misto e desbalanceamento. ##----------------------------------------------------------------------------- da <- expand.grid(bloc=gl(4,1), A=gl(3,1), B=gl(4,1), C=gl(2,1)) da$y <- rnorm(nrow(da), 100, 1) da <- transform(da, parc=interaction(bloc, A), subp=interaction(bloc, A, B)) str(da) m0 <- aov(y~bloc+A*B*C+Error(bloc:A/B), data=da) summary(m0) m0 <- aov(y~bloc+A*B*C+Error(bloc:A+bloc:A:B), data=da) summary(m0) m0 <- aov(y~bloc+A*B*C+Error(parc/B), data=da) summary(m0) m0 <- aov(y~bloc+A*B*C+Error(parc+subp), data=da) summary(m0) m0 <- aov(y~bloc+A*B*C+Error(parc/subp), data=da) summary(m0) ## E como fazer com os dados desbalanceados? db <- da[-c(1,8,33),] ## ops, o fator C aparece na parte de subparcela?? ## Erro ao determinar as fontes de variação e os estratos ## aos quais pertencem. m1 <- aov(y~bloc+A*B*C+Error(bloc:A+bloc:A:B), data=db) summary(m1) require(nlme) ## NOTA: ## A lme() só interpreta o operador de aninhamento '/', não permite '*' ## e ':'. ## Modelos mistos não assumem balanceamento para correta estimação. ## bloco aleatório mm0 <- lme(y~A*B*C, random=~1|bloc/A/B, data=db) ## bloco fixo mm0 <- lme(y~bloc+A*B*C, random=~1|parc/B, data=db) VarCorr(mm0) anova(mm0) summary(mm0) ##----------------------------------------------------------------------------- À disposição. Walmes.
participantes (4)
-
FHRB Toledo
-
Jose Claudio Faria
-
Tiago Souza Marçal
-
walmes .