J'ai le type de données suivant. J'ai évalué 10 individus chacun répété 10 fois. J'ai une matrice de relations 10x10 (relation entre toutes les combinaisons des individus).
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))
Cette génération est constituée de différentes variétés de plantes, chacune peut donc être cultivée à plusieurs reprises et le rendement est mesuré. La matrice de covariance est une mesure de parenté par similitude génétique calculée par les probabilités ibd dans des expériences séparées.
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
Mon modèle est:
yld = gen + repl + error
gen et repl sont considérés comme aléatoires et je veux obtenir les estimations de l'effet aléatoire associées à chaque génération, mais je dois prendre en compte la matrice de relation.
S'il est trop complexe pour s'adapter à des modèles imbriqués, je supprimerais simplement repl du modèle, mais idéalement je le garderai.
yld = gen + error
Comment puis-je y parvenir en utilisant des packages R, peut-être avec nlme ou lme4? Je sais qu'ASREML peut le faire mais je n'ai pas de prise et j'aime R pour être robuste aussi bien que gratuit.