Que dispone de los siguientes tipos de datos. He evaluado de 10 individuos cada uno repite 10 veces. He 10x10 relación de la matriz de relación entre todos los combinación de los individuos).
set.seed(1234)
mydata <- data.frame (gen = factor(rep(1:10, each = 10)),
repl = factor(rep(1:10, 10)),
yld = rnorm(10, 5, 0.5))
Este gen es de diferentes variedades de la planta, por lo que cada uno puede ser repetidamente crecido y la rentabilidad se mide. La matriz de covarianza es la relación, medida por la similitud genética calculada por la eii probabilidades en experimentos separados.
library(lme4)
covmat <- round(nearPD(matrix(runif(100, 0, 0.2), nrow = 10))$mat, 2)
diag(covmat) <- diag(covmat)/10+1
rownames(covmat) <- colnames(covmat) <- levels(mydata$gen)
> covmat
10 x 10 Matrix of class "dgeMatrix"
1 2 3 4 5 6 7 8 9 10
1 1.00 0.08 0.06 0.03 0.09 0.09 0.10 0.08 0.07 0.10
2 0.08 1.00 0.08 0.09 0.04 0.12 0.08 0.08 0.11 0.09
3 0.06 0.08 1.00 0.10 0.05 0.09 0.09 0.07 0.04 0.13
4 0.03 0.09 0.10 1.00 0.02 0.11 0.09 0.06 0.04 0.12
5 0.09 0.04 0.05 0.02 1.00 0.06 0.07 0.05 0.02 0.08
6 0.09 0.12 0.09 0.11 0.06 1.00 0.12 0.08 0.07 0.14
7 0.10 0.08 0.09 0.09 0.07 0.12 1.00 0.08 0.03 0.15
8 0.08 0.08 0.07 0.06 0.05 0.08 0.08 1.00 0.06 0.09
9 0.07 0.11 0.04 0.04 0.02 0.07 0.03 0.06 1.00 0.03
10 0.10 0.09 0.13 0.12 0.08 0.14 0.15 0.09 0.03 1.00
Mi modelo es:
yld = gen + repl + error
ambos gen y repl se consideran aleatorios y quiero conseguir el efecto aleatorio de las estimaciones asociadas con cada generación, sin embargo, tengo la necesidad de considerar la relación de la matriz.
Si es demasiado complejo como para adaptarse a modelos anidados, me acaba de quitar repl de la modelo, pero lo ideal será mantenerlo.
yld = gen + error
¿Cómo puedo lograr esto mediante R paquetes, tal vez con nlme o lme4? Sé que ASREML puede hacerlo, pero no me han presionado y me encanta R por ser robusto así como libre.