[R-br] ADAPTAR UMA MATRIZ NO R

Tiago Souza Marçal tiagosouzamarcal em hotmail.com
Quinta Outubro 16 00:29:32 BRT 2014


Obrigado pelas considerações Walmes.
A tal matriz que enviei é só parte de uma matriz maior que codifica efeitos dos cruzamentos, blocos, capacidade de combinação 
geral, capacidade de combinação especifica, efeito materno e efeito recíproco. A matriz de incidência para os efeitos recíprocos codifica as diferenças observadas referentes a alternância dos genitores (fêmea-macho / macho-fêmea) e no caso os efeitos codificados por ela nos informa quem deve ser o genitor feminino e quem deve ser o masculino.
Tal rotina que estou trabalhando foi implementada no SAS na dissertação <http://www.cm.colpos.mx/2010/images/tesis/tesis_osval.pdf>. Agora estou implementando em R. 
Minha dúvida na verdade era como formar contrastes entre os cruzamentos recíprocos na matriz CR do post.
Desculpe pela falta de clareza na mensagem anterior.
Agradeço pela ajuda.
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, 15 Oct 2014 23:56:23 -0300
From: walmeszeviani em gmail.com
To: r-br em listas.c3sl.ufpr.br
Subject: Re: [R-br] ADAPTAR UMA MATRIZ NO R

Bem, eu confesso que também não teria entendido nada se eu tivesse um tiquinho de conhecimento bem pequeno em experimento dialelo. Do pouco que sei e nas vezes que precisei, tive que gerar a matriz que você menciona e fiz isso a partir da informação dos genitores. O CMR abaixo mostra como obter uma matrix com 1 e -1 em cada linha para genitor I e genitor II (não deveria ser 0.5 e 0.5 haja visto que o genótipo resultante tem como esperado 0.5 do efeito aditivo de cada genitor? Enfim...).

## 5 genótipos. Dialelo completo.
gen <- gl(5,1)

## m <- diag(nlevels(gen))
## U <- upper.tri(m)
## cbind(col(m)[U], row(m)[U])
da <- as.data.frame(t(combn(5, 2))) ## Equivalente porém mais conveniente.
names(da) <- c("genitor1","genitor2")
da <- transform(da,
                genitor1=factor(genitor1, levels(gen)),
                genitor2=factor(genitor2, levels(gen)))
levels(da$genitor1)
levels(da$genitor2)

X1 <- model.matrix(~0+genitor1, da)
X2 <- model.matrix(~0+genitor2, da)

X <- X1-X2

da$y <- rnorm(nrow(X))

lm(da$y~0+X)
​
À​ disposição.
Walmes.​



_______________________________________________
R-br mailing list
R-br em 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. 		 	   		  
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20141016/552d37d7/attachment.html>


Mais detalhes sobre a lista de discussão R-br