lme4 или другой код пакета с открытым исходным кодом R, эквивалентный asreml-R


13

Я хочу приспособить смешанную модель, используя lme4, nlme, пакет байсовой регрессии или любой доступный.

Смешанная модель в соглашениях о кодировании Asreml-R

прежде чем углубляться в детали, мы можем захотеть узнать подробности о соглашениях asreml-R для тех, кто не знаком с кодами ASREML.

y = Xτ + Zu + e ........................(1) ; 

обычная смешанная модель с, y обозначает вектор наблюдений n × 1, где τ - вектор фиксированных эффектов p × 1, X - матрица расчета n × p полного ранга столбца, которая связывает наблюдения с соответствующей комбинацией фиксированных эффектов , u - вектор случайных эффектов q × 1, Z - расчетная матрица n × q, которая связывает наблюдения с соответствующей комбинацией случайных эффектов, а e - вектор остаточных ошибок n × 1. Модель (1) называется линейная смешанная модель или линейная модель смешанных эффектов. Предполагается

введите описание изображения здесь

где матрицы G и R являются функциями параметров γ и φ соответственно.

Параметр θ является параметром дисперсии, который мы будем называть параметром масштаба.

В моделях со смешанными эффектами с более чем одной остаточной дисперсией, возникающей, например, при анализе данных с более чем одним разделом или вариацией, параметр θ фиксируется в одном. В моделях со смешанными эффектами с одной остаточной дисперсией θ равно остаточной дисперсии (σ2). В этом случае R должна быть корреляционной матрицей. Более подробная информация о моделях представлена ​​в руководстве Asreml (ссылка) .

Структуры дисперсии для ошибок: R-структура и структуры дисперсии для случайных эффектов: G-структуры могут быть определены.

введите описание изображения здесьвведите описание изображения здесь

Моделирование дисперсии в asreml () важно понимать формирование структур дисперсии через прямые продукты. Обычное предположение о наименьших квадратах (и по умолчанию в asreml ()) состоит в том, что они распределены независимо и одинаково (IID). Однако, если бы данные были получены в полевом эксперименте, разложенном в прямоугольном массиве из r строк по c столбцам, скажем, мы могли бы упорядочить невязки e в виде матрицы и потенциально считать, что они были автоматически коррелированы в строках и столбцах. вектор в порядке полей, то есть путем сортировки остатков строк в столбцах (графики внутри блоков) дисперсия остатков может быть тогда

введите описание изображения здесь введите описание изображения здесьявляются корреляционными матрицами для модели строки (порядок r, параметр автокорреляции ½r) и модели столбца (порядок c, параметр автокорреляции ½c) соответственно. Более конкретно, двумерная разделяемая авторегрессионная пространственная структура (AR1 x AR1) иногда допускается для общих ошибок в анализе полевых испытаний.

Пример данных:

nin89 из библиотеки asreml-R, где различные сорта были выращены в точках / блоках в прямоугольном поле. Чтобы контролировать дополнительную изменчивость в направлении строки или столбца, каждый график упоминается как переменные строки и столбца (дизайн столбца строки). Таким образом, этот ряд столбца дизайн с блокировкой. Урожай измеряется переменной.

Пример модели

Мне нужно что-то эквивалентное кодам asreml-R:

Синтаксис простой модели будет выглядеть следующим образом:

 rcb.asr <- asreml(yield  Variety, random =  Replicate, data = nin89)  
 .....model 0

Линейная модель указывается в фиксированных (обязательных), случайных (необязательных) и rcov (компонент ошибки) аргументах в качестве объектов формул. По умолчанию это простой термин ошибки, и его не нужно формально указывать для элемента ошибки, как в модели 0 ,

здесь разнообразие является фиксированным эффектом, а случайное - копиями (блоками). Помимо случайных и фиксированных терминов мы можем указать термин ошибки. Это значение по умолчанию в этой модели 0. Остаточный компонент или компонент ошибки модели указывается в объекте формулы через аргумент rcov, см. Следующие модели 1: 4.

Следующая модель1 является более сложной, в которой указана структура G (случайная) и R (ошибка).

Модель 1:

data(nin89)


 # Model 1: RCB analysis with G and R structure
     rcb.asr <- asreml(yield ~ Variety, random = ~ idv(Replicate), 
      rcov = ~ idv(units), data = nin89)

Эта модель эквивалентна приведенной выше модели 0 и вводит использование дисперсионной модели G и R. Здесь параметр random и rcov задает случайные формулы и формулы rcov для явного указания структур G и R. где idv () - специальная функция модели в asreml (), которая идентифицирует модель отклонения. Выражение idv (единицы) явно устанавливает матрицу дисперсии для e в масштабированную единицу.

# Модель 2: двумерная пространственная модель с корреляцией в одном направлении

  sp.asr <- asreml(yield ~ Variety, rcov = ~ Column:ar1(Row), data = nin89)

Экспериментальные единицы nin89 индексируются по столбцам и строкам. Таким образом, в этом случае мы ожидаем случайного изменения в двух направлениях - направлении строки и столбца. где ar1 () - специальная функция, задающая модель авторегрессии дисперсии первого порядка для строки. Этот вызов задает двумерную пространственную структуру для ошибки, но с пространственной корреляцией только в направлении строки. Модель отклонения для столбца - это тождество (id ()), но не требует формального указания, так как это значение по умолчанию.

# модель 3: двумерная пространственная модель, структура ошибок в обоих направлениях

 sp.asr <- asreml(yield ~ Variety, rcov = ~ ar1(Column):ar1(Row),  
 data = nin89)
sp.asr <- asreml(yield ~ Variety, random = ~ units, 
 rcov = ~ ar1(Column):ar1(Row), data = nin89)

аналогично вышеприведенной модели 2, однако корреляция имеет два направления - авторегрессионное.

Я не уверен, сколько из этих моделей возможно с открытыми пакетами R. Даже если решение любой из этих моделей окажет большую помощь. Даже если бой +50 может стимулировать к разработке, такой пакет очень поможет!

См. MAYSaseen предоставил выходные данные каждой модели и данные (в качестве ответа) для сравнения.

Изменения: Ниже приводится предложение, которое я получил на дискуссионном форуме по смешанным моделям: «Вы можете взглянуть на пакеты регресса и пространственной ковариации Дэвида Клиффорда. Первый позволяет подогнать (гауссовские) смешанные модели, где вы можете очень гибко указать структуру ковариационной матрицы. (например, я использовал его для данных родословной.) Пакет пространственного ковариации использует регрессию для предоставления более сложных моделей, чем AR1xAR1, но может быть применимо. Возможно, вам придется связаться с автором для применения его к вашей конкретной проблеме. "


Я уверен, что модели 2-4 не возможны в lme4. Можете ли вы (а) рассказать нам, почему вам нужно делать это, lme4а не asreml-R(б) рассмотреть возможность публикации информации о том, r-sig-mixed-modelsгде есть более значимый опыт?
Бен Болкер

Основная идея заключается в том, что asreml-R требует лицензию (по крайней мере, для пользователей из развитых стран), если это возможно в lme4 или других смешанных модельных пакетах, что было бы здорово ...
Джон

Я думаю, что это не будет легко. Я думаю, что вам лучше всего определить новое corStructв nlme(для анизотропных корреляций) ... Было бы полезно, если бы вы могли кратко изложить (словами или уравнениями) статистические модели, соответствующие этим утверждениям ASREML, поскольку мы не все знакомы с Синтаксис ASREML ...
Бен Болкер

1
Ниже приведены комментарии в смешанной группе моделей: Вы можете посмотреть на пакеты регресса и пространственной ковариации Дэвида Клиффорда. Первый позволяет подогнать (гауссовские) смешанные модели, где вы можете очень гибко указать структуру ковариационной матрицы (например, я использовал ее для родословных данных). Пакет SpaceCovariance использует регресс для предоставления более сложных моделей, чем AR1xAR1, но может быть применимым. Возможно, вам придется переписываться с автором, чтобы применить его к вашей конкретной проблеме.
Джон

1
если у меня будет шанс, я постараюсь решить как можно больше, но, откровенно говоря, я не могу этого сделать, у меня много на тарелке. Просмотр пакетов, предложенных Дэвидом Клиффордом, звучит как отличная идея - может быть, вы сможете решить свою проблему таким образом ... Я почти уверен, что с моделью 1 можно покончить MCMCglmm, и я уверен, что (кроме spatialCovarianceупомянули, что я не знаком с), единственным способом , чтобы сделать это в R является определением новых corStructс - что возможно, но не тривиальны.
Бен Болкер

Ответы:


4

Вы можете установить эту модель в AD Model Builder. AD Model Builder - это бесплатное программное обеспечение для построения общих нелинейных моделей, включая общие нелинейные модели случайных эффектов. Так, например, вы можете подобрать отрицательную биномиальную пространственную модель, в которой как среднее, так и сверхдисперсное имеют структуру ar (1) x ar (1). Я построил код для этого примера и приспособил его к данным. Если кому-то интересно, возможно, лучше обсудить это в списке на http://admb-project.org.

Примечание. Существует версия ADMB для R, но функции, доступные в пакете R, являются подмножеством автономного программного обеспечения ADMB.

В этом примере проще создать файл ASCII с данными, прочитать его в программу ADMB, запустить программу, а затем прочитать оценки параметров и т. Д. Обратно в R для всего, что вы хотите сделать.

Вы должны понимать, что ADMB - это не набор пакетов, а язык для написания программного обеспечения для нелинейной оценки параметров. Как я уже говорил, лучше обсудить это в списке ADMB, где все знают о программном обеспечении. После того, как это будет сделано, и вы поймете модель, вы можете опубликовать результаты здесь. Однако здесь есть ссылка на коды ML и REML, которые я собрал для данных о пшенице.

http://lists.admb-project.org/pipermail/users/attachments/20111124/448923c8/attachment.zip


Существует ли межфазное соединение R для подключения к AD Model Builder?
Джон

1

Модель 0

ASReml-R,

rcb0.asr <- asreml(yield~Variety, random=~Rep, data=nin89, na.method.X="include")
summary(rcb0.asr)
$call
asreml(fixed = yield ~ Variety, random = ~Rep, data = nin89, 
    na.method.X = "include")

$loglik
[1] -454.4691

$nedf
[1] 168

$sigma
[1] 7.041475

$varcomp
                gamma component std.error  z.ratio constraint
Rep!Rep.var 0.1993231  9.882911  8.792829 1.123974   Positive
R!variance  1.0000000 49.582368  5.458839 9.082951   Positive

attr(,"class")
[1] "summary.asreml"

summary(rcb0.asr)$varcomp
                gamma component std.error  z.ratio constraint
Rep!Rep.var 0.1993231  9.882911  8.792829 1.123974   Positive
R!variance  1.0000000 49.582368  5.458839 9.082951   Positive

> anova(rcb0.asr)
Wald tests for fixed effects

Response: yield

Terms added sequentially; adjusted for those above

              Df Sum of Sq Wald statistic Pr(Chisq)    
(Intercept)    1   12001.6        242.054    <2e-16 ***
Variety       55    2387.5         48.152    0.7317    
residual (MS)         49.6                             
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
> coef(rcb0.asr)$fixed
                    effect
Variety_ARAPAHOE    0.0000
Variety_BRULE      -3.3625
Variety_BUCKSKIN   -3.8750
Variety_CENTURA    -7.7875
Variety_CENTURK78   0.8625
Variety_CHEYENNE   -1.3750
Variety_CODY       -8.2250
Variety_COLT       -2.4375
Variety_GAGE       -4.9250
Variety_HOMESTEAD  -1.8000
Variety_KS831374   -5.3125
Variety_LANCER     -0.8750
Variety_LANCOTA    -2.8875
Variety_NE83404    -2.0500
Variety_NE83406    -5.1625
Variety_NE83407    -6.7500
Variety_NE83432    -9.7125
Variety_NE83498     0.6875
Variety_NE83T12    -7.8750
Variety_NE84557    -8.9125
Variety_NE85556    -3.0500
Variety_NE85623    -7.7125
Variety_NE86482    -5.1500
Variety_NE86501     1.5000
Variety_NE86503     3.2125
Variety_NE86507    -5.6500
Variety_NE86509    -2.5875
Variety_NE86527    -7.4250
Variety_NE86582    -4.9000
Variety_NE86606     0.3250
Variety_NE86607    -0.1125
Variety_NE86T666   -7.9000
Variety_NE87403    -4.3125
Variety_NE87408    -3.1375
Variety_NE87409    -8.0625
Variety_NE87446    -1.7625
Variety_NE87451    -4.8250
Variety_NE87457    -5.5250
Variety_NE87463    -3.5250
Variety_NE87499    -9.0250
Variety_NE87512    -6.1875
Variety_NE87513    -2.6250
Variety_NE87522    -4.4375
Variety_NE87612    -7.6375
Variety_NE87613    -0.0375
Variety_NE87615    -3.7500
Variety_NE87619     1.8250
Variety_NE87627    -6.2125
Variety_NORKAN     -5.0250
Variety_REDLAND     1.0625
Variety_ROUGHRIDER -8.2500
Variety_SCOUT66    -1.9125
Variety_SIOUXLAND   0.6750
Variety_TAM107     -1.0375
Variety_TAM200     -8.2000
Variety_VONA       -5.8375
(Intercept)        29.4375
> coef(rcb0.asr)$random
          effect
Rep_1  1.8795997
Rep_2  2.8432659
Rep_3 -0.8712739
Rep_4 -3.8515918

lme4

> rcb0.lmer <- lmer(yield~Variety+(1|Rep), data=nin89)
> print(rcb0.lmer, corr=FALSE)
Linear mixed model fit by REML 
Formula: yield ~ Variety + (1 | Rep) 
   Data: nin89 
  AIC  BIC logLik deviance REMLdev
 1334 1532 -608.9     1456    1218
Random effects:
 Groups   Name        Variance Std.Dev.
 Rep      (Intercept)  9.8829  3.1437  
 Residual             49.5824  7.0415  
Number of obs: 224, groups: Rep, 4

Fixed effects:
                  Estimate Std. Error t value
(Intercept)        29.4375     3.8556   7.635
VarietyBRULE       -3.3625     4.9791  -0.675
VarietyBUCKSKIN    -3.8750     4.9791  -0.778
VarietyCENTURA     -7.7875     4.9791  -1.564
VarietyCENTURK78    0.8625     4.9791   0.173
VarietyCHEYENNE    -1.3750     4.9791  -0.276
VarietyCODY        -8.2250     4.9791  -1.652
VarietyCOLT        -2.4375     4.9791  -0.490
VarietyGAGE        -4.9250     4.9791  -0.989
VarietyHOMESTEAD   -1.8000     4.9791  -0.362
VarietyKS831374    -5.3125     4.9791  -1.067
VarietyLANCER      -0.8750     4.9791  -0.176
VarietyLANCOTA     -2.8875     4.9791  -0.580
VarietyNE83404     -2.0500     4.9791  -0.412
VarietyNE83406     -5.1625     4.9791  -1.037
VarietyNE83407     -6.7500     4.9791  -1.356
VarietyNE83432     -9.7125     4.9791  -1.951
VarietyNE83498      0.6875     4.9791   0.138
VarietyNE83T12     -7.8750     4.9791  -1.582
VarietyNE84557     -8.9125     4.9791  -1.790
VarietyNE85556     -3.0500     4.9791  -0.613
VarietyNE85623     -7.7125     4.9791  -1.549
VarietyNE86482     -5.1500     4.9791  -1.034
VarietyNE86501      1.5000     4.9791   0.301
VarietyNE86503      3.2125     4.9791   0.645
VarietyNE86507     -5.6500     4.9791  -1.135
VarietyNE86509     -2.5875     4.9791  -0.520
VarietyNE86527     -7.4250     4.9791  -1.491
VarietyNE86582     -4.9000     4.9791  -0.984
VarietyNE86606      0.3250     4.9791   0.065
VarietyNE86607     -0.1125     4.9791  -0.023
VarietyNE86T666    -7.9000     4.9791  -1.587
VarietyNE87403     -4.3125     4.9791  -0.866
VarietyNE87408     -3.1375     4.9791  -0.630
VarietyNE87409     -8.0625     4.9791  -1.619
VarietyNE87446     -1.7625     4.9791  -0.354
VarietyNE87451     -4.8250     4.9791  -0.969
VarietyNE87457     -5.5250     4.9791  -1.110
VarietyNE87463     -3.5250     4.9791  -0.708
VarietyNE87499     -9.0250     4.9791  -1.813
VarietyNE87512     -6.1875     4.9791  -1.243
VarietyNE87513     -2.6250     4.9791  -0.527
VarietyNE87522     -4.4375     4.9791  -0.891
VarietyNE87612     -7.6375     4.9791  -1.534
VarietyNE87613     -0.0375     4.9791  -0.008
VarietyNE87615     -3.7500     4.9791  -0.753
VarietyNE87619      1.8250     4.9791   0.367
VarietyNE87627     -6.2125     4.9791  -1.248
VarietyNORKAN      -5.0250     4.9791  -1.009
VarietyREDLAND      1.0625     4.9791   0.213
VarietyROUGHRIDER  -8.2500     4.9791  -1.657
VarietySCOUT66     -1.9125     4.9791  -0.384
VarietySIOUXLAND    0.6750     4.9791   0.136
VarietyTAM107      -1.0375     4.9791  -0.208
VarietyTAM200      -8.2000     4.9791  -1.647
VarietyVONA        -5.8375     4.9791  -1.172
> anova(rcb0.lmer)
Analysis of Variance Table
        Df Sum Sq Mean Sq F value
Variety 55 2387.5  43.409  0.8755
> fixef(rcb0.lmer)
      (Intercept)      VarietyBRULE   VarietyBUCKSKIN    VarietyCENTURA 
          29.4375           -3.3625           -3.8750           -7.7875 
 VarietyCENTURK78   VarietyCHEYENNE       VarietyCODY       VarietyCOLT 
           0.8625           -1.3750           -8.2250           -2.4375 
      VarietyGAGE  VarietyHOMESTEAD   VarietyKS831374     VarietyLANCER 
          -4.9250           -1.8000           -5.3125           -0.8750 
   VarietyLANCOTA    VarietyNE83404    VarietyNE83406    VarietyNE83407 
          -2.8875           -2.0500           -5.1625           -6.7500 
   VarietyNE83432    VarietyNE83498    VarietyNE83T12    VarietyNE84557 
          -9.7125            0.6875           -7.8750           -8.9125 
   VarietyNE85556    VarietyNE85623    VarietyNE86482    VarietyNE86501 
          -3.0500           -7.7125           -5.1500            1.5000 
   VarietyNE86503    VarietyNE86507    VarietyNE86509    VarietyNE86527 
           3.2125           -5.6500           -2.5875           -7.4250 
   VarietyNE86582    VarietyNE86606    VarietyNE86607   VarietyNE86T666 
          -4.9000            0.3250           -0.1125           -7.9000 
   VarietyNE87403    VarietyNE87408    VarietyNE87409    VarietyNE87446 
          -4.3125           -3.1375           -8.0625           -1.7625 
   VarietyNE87451    VarietyNE87457    VarietyNE87463    VarietyNE87499 
          -4.8250           -5.5250           -3.5250           -9.0250 
   VarietyNE87512    VarietyNE87513    VarietyNE87522    VarietyNE87612 
          -6.1875           -2.6250           -4.4375           -7.6375 
   VarietyNE87613    VarietyNE87615    VarietyNE87619    VarietyNE87627 
          -0.0375           -3.7500            1.8250           -6.2125 
    VarietyNORKAN    VarietyREDLAND VarietyROUGHRIDER    VarietySCOUT66 
          -5.0250            1.0625           -8.2500           -1.9125 
 VarietySIOUXLAND     VarietyTAM107     VarietyTAM200       VarietyVONA 
           0.6750           -1.0375           -8.2000           -5.8375 
> ranef(rcb0.lmer)
$Rep
  (Intercept)
1   1.8798700
2   2.8436747
3  -0.8713991
4  -3.8521455

nlme

> rcb0.lme <- lme(yield~Variety, random=~1|Rep, data=na.omit(nin89))
> print(rcb0.lme, corr=FALSE)
Linear mixed-effects model fit by REML
  Data: na.omit(nin89) 
  Log-restricted-likelihood: -608.8508
  Fixed: yield ~ Variety 
      (Intercept)      VarietyBRULE   VarietyBUCKSKIN    VarietyCENTURA 
          29.4375           -3.3625           -3.8750           -7.7875 
 VarietyCENTURK78   VarietyCHEYENNE       VarietyCODY       VarietyCOLT 
           0.8625           -1.3750           -8.2250           -2.4375 
      VarietyGAGE  VarietyHOMESTEAD   VarietyKS831374     VarietyLANCER 
          -4.9250           -1.8000           -5.3125           -0.8750 
   VarietyLANCOTA    VarietyNE83404    VarietyNE83406    VarietyNE83407 
          -2.8875           -2.0500           -5.1625           -6.7500 
   VarietyNE83432    VarietyNE83498    VarietyNE83T12    VarietyNE84557 
          -9.7125            0.6875           -7.8750           -8.9125 
   VarietyNE85556    VarietyNE85623    VarietyNE86482    VarietyNE86501 
          -3.0500           -7.7125           -5.1500            1.5000 
   VarietyNE86503    VarietyNE86507    VarietyNE86509    VarietyNE86527 
           3.2125           -5.6500           -2.5875           -7.4250 
   VarietyNE86582    VarietyNE86606    VarietyNE86607   VarietyNE86T666 
          -4.9000            0.3250           -0.1125           -7.9000 
   VarietyNE87403    VarietyNE87408    VarietyNE87409    VarietyNE87446 
          -4.3125           -3.1375           -8.0625           -1.7625 
   VarietyNE87451    VarietyNE87457    VarietyNE87463    VarietyNE87499 
          -4.8250           -5.5250           -3.5250           -9.0250 
   VarietyNE87512    VarietyNE87513    VarietyNE87522    VarietyNE87612 
          -6.1875           -2.6250           -4.4375           -7.6375 
   VarietyNE87613    VarietyNE87615    VarietyNE87619    VarietyNE87627 
          -0.0375           -3.7500            1.8250           -6.2125 
    VarietyNORKAN    VarietyREDLAND VarietyROUGHRIDER    VarietySCOUT66 
          -5.0250            1.0625           -8.2500           -1.9125 
 VarietySIOUXLAND     VarietyTAM107     VarietyTAM200       VarietyVONA 
           0.6750           -1.0375           -8.2000           -5.8375 

Random effects:
 Formula: ~1 | Rep
        (Intercept) Residual
StdDev:     3.14371 7.041475

Number of Observations: 224
Number of Groups: 4 
> anova(rcb0.lme)
            numDF denDF   F-value p-value
(Intercept)     1   165 242.05402  <.0001
Variety        55   165   0.87549  0.7119
> fixef(rcb0.lme)
      (Intercept)      VarietyBRULE   VarietyBUCKSKIN    VarietyCENTURA 
          29.4375           -3.3625           -3.8750           -7.7875 
 VarietyCENTURK78   VarietyCHEYENNE       VarietyCODY       VarietyCOLT 
           0.8625           -1.3750           -8.2250           -2.4375 
      VarietyGAGE  VarietyHOMESTEAD   VarietyKS831374     VarietyLANCER 
          -4.9250           -1.8000           -5.3125           -0.8750 
   VarietyLANCOTA    VarietyNE83404    VarietyNE83406    VarietyNE83407 
          -2.8875           -2.0500           -5.1625           -6.7500 
   VarietyNE83432    VarietyNE83498    VarietyNE83T12    VarietyNE84557 
          -9.7125            0.6875           -7.8750           -8.9125 
   VarietyNE85556    VarietyNE85623    VarietyNE86482    VarietyNE86501 
          -3.0500           -7.7125           -5.1500            1.5000 
   VarietyNE86503    VarietyNE86507    VarietyNE86509    VarietyNE86527 
           3.2125           -5.6500           -2.5875           -7.4250 
   VarietyNE86582    VarietyNE86606    VarietyNE86607   VarietyNE86T666 
          -4.9000            0.3250           -0.1125           -7.9000 
   VarietyNE87403    VarietyNE87408    VarietyNE87409    VarietyNE87446 
          -4.3125           -3.1375           -8.0625           -1.7625 
   VarietyNE87451    VarietyNE87457    VarietyNE87463    VarietyNE87499 
          -4.8250           -5.5250           -3.5250           -9.0250 
   VarietyNE87512    VarietyNE87513    VarietyNE87522    VarietyNE87612 
          -6.1875           -2.6250           -4.4375           -7.6375 
   VarietyNE87613    VarietyNE87615    VarietyNE87619    VarietyNE87627 
          -0.0375           -3.7500            1.8250           -6.2125 
    VarietyNORKAN    VarietyREDLAND VarietyROUGHRIDER    VarietySCOUT66 
          -5.0250            1.0625           -8.2500           -1.9125 
 VarietySIOUXLAND     VarietyTAM107     VarietyTAM200       VarietyVONA 
           0.6750           -1.0375           -8.2000           -5.8375 
> ranef(rcb0.lme)
  (Intercept)
1   1.8795997
2   2.8432659
3  -0.8712739
4  -3.8515918

1

Модель 1

ASReml-R,

> rcb.asr <- asreml(yield~Variety, random=~idv(Rep), rcov=~idv(units), data=nin89, na.method.X="include")
> summary(rcb.asr)
$call
asreml(fixed = yield ~ Variety, random = ~idv(Rep), rcov = ~idv(units), 
    data = nin89, na.method.X = "include")

$loglik
[1] -454.4691

$nedf
[1] 168

$sigma
[1] 1

$varcomp
                gamma component std.error  z.ratio constraint
Rep!Rep.var  9.882911  9.882911  8.792823 1.123975   Positive
R!variance   1.000000  1.000000        NA       NA      Fixed
R!units.var 49.582368 49.582368  5.458839 9.082951   Positive

attr(,"class")
[1] "summary.asreml"
> summary(rcb0.asr)$varcomp
                gamma component std.error  z.ratio constraint
Rep!Rep.var 0.1993231  9.882911  8.792829 1.123974   Positive
R!variance  1.0000000 49.582368  5.458839 9.082951   Positive
> anova(rcb.asr)
Wald tests for fixed effects

Response: yield

Terms added sequentially; adjusted for those above

              Df Sum of Sq Wald statistic Pr(Chisq)    
(Intercept)    1   242.054        242.054    <2e-16 ***
Variety       55    48.152         48.152    0.7317    
residual (MS)        1.000                             
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
> coef(rcb.asr)$fixed
                    effect
Variety_ARAPAHOE    0.0000
Variety_BRULE      -3.3625
Variety_BUCKSKIN   -3.8750
Variety_CENTURA    -7.7875
Variety_CENTURK78   0.8625
Variety_CHEYENNE   -1.3750
Variety_CODY       -8.2250
Variety_COLT       -2.4375
Variety_GAGE       -4.9250
Variety_HOMESTEAD  -1.8000
Variety_KS831374   -5.3125
Variety_LANCER     -0.8750
Variety_LANCOTA    -2.8875
Variety_NE83404    -2.0500
Variety_NE83406    -5.1625
Variety_NE83407    -6.7500
Variety_NE83432    -9.7125
Variety_NE83498     0.6875
Variety_NE83T12    -7.8750
Variety_NE84557    -8.9125
Variety_NE85556    -3.0500
Variety_NE85623    -7.7125
Variety_NE86482    -5.1500
Variety_NE86501     1.5000
Variety_NE86503     3.2125
Variety_NE86507    -5.6500
Variety_NE86509    -2.5875
Variety_NE86527    -7.4250
Variety_NE86582    -4.9000
Variety_NE86606     0.3250
Variety_NE86607    -0.1125
Variety_NE86T666   -7.9000
Variety_NE87403    -4.3125
Variety_NE87408    -3.1375
Variety_NE87409    -8.0625
Variety_NE87446    -1.7625
Variety_NE87451    -4.8250
Variety_NE87457    -5.5250
Variety_NE87463    -3.5250
Variety_NE87499    -9.0250
Variety_NE87512    -6.1875
Variety_NE87513    -2.6250
Variety_NE87522    -4.4375
Variety_NE87612    -7.6375
Variety_NE87613    -0.0375
Variety_NE87615    -3.7500
Variety_NE87619     1.8250
Variety_NE87627    -6.2125
Variety_NORKAN     -5.0250
Variety_REDLAND     1.0625
Variety_ROUGHRIDER -8.2500
Variety_SCOUT66    -1.9125
Variety_SIOUXLAND   0.6750
Variety_TAM107     -1.0375
Variety_TAM200     -8.2000
Variety_VONA       -5.8375
(Intercept)        29.4375
> coef(rcb.asr)$random
          effect
Rep_1  1.8795997
Rep_2  2.8432658
Rep_3 -0.8712738
Rep_4 -3.8515916

nlme

Увидеть трюк

> nin89$Int <- 1
> rcb.lme <- lme(yield~Variety, random=list(Int=pdIdent(~Rep-1)), data=na.omit(nin89))
> print(rcb.lme, corr=FALSE)
Linear mixed-effects model fit by REML
  Data: na.omit(nin89) 
  Log-restricted-likelihood: -608.8508
  Fixed: yield ~ Variety 
      (Intercept)      VarietyBRULE   VarietyBUCKSKIN    VarietyCENTURA 
          29.4375           -3.3625           -3.8750           -7.7875 
 VarietyCENTURK78   VarietyCHEYENNE       VarietyCODY       VarietyCOLT 
           0.8625           -1.3750           -8.2250           -2.4375 
      VarietyGAGE  VarietyHOMESTEAD   VarietyKS831374     VarietyLANCER 
          -4.9250           -1.8000           -5.3125           -0.8750 
   VarietyLANCOTA    VarietyNE83404    VarietyNE83406    VarietyNE83407 
          -2.8875           -2.0500           -5.1625           -6.7500 
   VarietyNE83432    VarietyNE83498    VarietyNE83T12    VarietyNE84557 
          -9.7125            0.6875           -7.8750           -8.9125 
   VarietyNE85556    VarietyNE85623    VarietyNE86482    VarietyNE86501 
          -3.0500           -7.7125           -5.1500            1.5000 
   VarietyNE86503    VarietyNE86507    VarietyNE86509    VarietyNE86527 
           3.2125           -5.6500           -2.5875           -7.4250 
   VarietyNE86582    VarietyNE86606    VarietyNE86607   VarietyNE86T666 
          -4.9000            0.3250           -0.1125           -7.9000 
   VarietyNE87403    VarietyNE87408    VarietyNE87409    VarietyNE87446 
          -4.3125           -3.1375           -8.0625           -1.7625 
   VarietyNE87451    VarietyNE87457    VarietyNE87463    VarietyNE87499 
          -4.8250           -5.5250           -3.5250           -9.0250 
   VarietyNE87512    VarietyNE87513    VarietyNE87522    VarietyNE87612 
          -6.1875           -2.6250           -4.4375           -7.6375 
   VarietyNE87613    VarietyNE87615    VarietyNE87619    VarietyNE87627 
          -0.0375           -3.7500            1.8250           -6.2125 
    VarietyNORKAN    VarietyREDLAND VarietyROUGHRIDER    VarietySCOUT66 
          -5.0250            1.0625           -8.2500           -1.9125 
 VarietySIOUXLAND     VarietyTAM107     VarietyTAM200       VarietyVONA 
           0.6750           -1.0375           -8.2000           -5.8375 

Random effects:
 Formula: ~Rep - 1 | Int
 Structure: Multiple of an Identity
           Rep1    Rep2    Rep3    Rep4 Residual
StdDev: 3.14371 3.14371 3.14371 3.14371 7.041475

Number of Observations: 224
Number of Groups: 1 
> anova(rcb.lme)
            numDF denDF   F-value p-value
(Intercept)     1   168 242.05402  <.0001
Variety        55   168   0.87549  0.7121
> fixef(rcb.lme)
      (Intercept)      VarietyBRULE   VarietyBUCKSKIN    VarietyCENTURA 
          29.4375           -3.3625           -3.8750           -7.7875 
 VarietyCENTURK78   VarietyCHEYENNE       VarietyCODY       VarietyCOLT 
           0.8625           -1.3750           -8.2250           -2.4375 
      VarietyGAGE  VarietyHOMESTEAD   VarietyKS831374     VarietyLANCER 
          -4.9250           -1.8000           -5.3125           -0.8750 
   VarietyLANCOTA    VarietyNE83404    VarietyNE83406    VarietyNE83407 
          -2.8875           -2.0500           -5.1625           -6.7500 
   VarietyNE83432    VarietyNE83498    VarietyNE83T12    VarietyNE84557 
          -9.7125            0.6875           -7.8750           -8.9125 
   VarietyNE85556    VarietyNE85623    VarietyNE86482    VarietyNE86501 
          -3.0500           -7.7125           -5.1500            1.5000 
   VarietyNE86503    VarietyNE86507    VarietyNE86509    VarietyNE86527 
           3.2125           -5.6500           -2.5875           -7.4250 
   VarietyNE86582    VarietyNE86606    VarietyNE86607   VarietyNE86T666 
          -4.9000            0.3250           -0.1125           -7.9000 
   VarietyNE87403    VarietyNE87408    VarietyNE87409    VarietyNE87446 
          -4.3125           -3.1375           -8.0625           -1.7625 
   VarietyNE87451    VarietyNE87457    VarietyNE87463    VarietyNE87499 
          -4.8250           -5.5250           -3.5250           -9.0250 
   VarietyNE87512    VarietyNE87513    VarietyNE87522    VarietyNE87612 
          -6.1875           -2.6250           -4.4375           -7.6375 
   VarietyNE87613    VarietyNE87615    VarietyNE87619    VarietyNE87627 
          -0.0375           -3.7500            1.8250           -6.2125 
    VarietyNORKAN    VarietyREDLAND VarietyROUGHRIDER    VarietySCOUT66 
          -5.0250            1.0625           -8.2500           -1.9125 
 VarietySIOUXLAND     VarietyTAM107     VarietyTAM200       VarietyVONA 
           0.6750           -1.0375           -8.2000           -5.8375 
> ranef(rcb.lme)
    Rep1     Rep2       Rep3      Rep4
1 1.8796 2.843266 -0.8712739 -3.851592

1

Модель 2

ASReml-R,

sp1.asr <- asreml(yield~Variety, rcov=~Column:ar1(Row), data=nin89, na.method.X="include")

> summary(sp1.asr)
$call
asreml(fixed = yield ~ Variety, rcov = ~Column:ar1(Row), data = nin89, 
    na.method.X = "include")

$loglik
[1] -408.1412

$nedf
[1] 168

$sigma
[1] 7.975127

$varcomp
               gamma  component  std.error   z.ratio    constraint
R!variance 1.0000000 63.6026561 11.3182328  5.619486      Positive
R!Row.cor  0.7795799  0.7795799  0.0406026 19.200245 Unconstrained

attr(,"class")
[1] "summary.asreml"
> summary(sp1.asr)$varcomp
               gamma  component  std.error   z.ratio    constraint
R!variance 1.0000000 63.6026561 11.3182328  5.619486      Positive
R!Row.cor  0.7795799  0.7795799  0.0406026 19.200245 Unconstrained
> anova(sp1.asr)
Wald tests for fixed effects

Response: yield

Terms added sequentially; adjusted for those above

              Df Sum of Sq Wald statistic Pr(Chisq)    
(Intercept)    1   24604.3         386.84 < 2.2e-16 ***
Variety       55    7974.4         125.38 2.048e-07 ***
residual (MS)         63.6                             
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
> coef(sp1.asr)$fixed
                        effect
Variety_ARAPAHOE     0.0000000
Variety_BRULE       -2.4048816
Variety_BUCKSKIN     7.8064972
Variety_CENTURA     -1.6997427
Variety_CENTURK78   -1.3829446
Variety_CHEYENNE    -1.1113084
Variety_CODY        -6.7461911
Variety_COLT        -1.7963394
Variety_GAGE        -3.4539524
Variety_HOMESTEAD   -5.5877510
Variety_KS831374    -0.8589476
Variety_LANCER      -2.8418476
Variety_LANCOTA     -5.9394801
Variety_NE83404     -3.4112613
Variety_NE83406     -1.9057358
Variety_NE83407     -3.2563922
Variety_NE83432     -5.4594311
Variety_NE83498      0.6446010
Variety_NE83T12     -4.0071361
Variety_NE84557     -4.2005181
Variety_NE85556      1.4836395
Variety_NE85623     -2.7617129
Variety_NE86482     -1.4309381
Variety_NE86501     -2.2287462
Variety_NE86503     -0.4557866
Variety_NE86507     -0.6983418
Variety_NE86509     -3.9215624
Variety_NE86527      0.5294386
Variety_NE86582     -5.4653632
Variety_NE86606     -0.7291575
Variety_NE86607     -0.1265536
Variety_NE86T666   -12.1437291
Variety_NE87403     -7.4623631
Variety_NE87408     -3.3586380
Variety_NE87409     -1.0360336
Variety_NE87446     -4.9030958
Variety_NE87451     -3.2836149
Variety_NE87457     -3.5244583
Variety_NE87463     -3.8427658
Variety_NE87499     -4.6298393
Variety_NE87512     -5.3760809
Variety_NE87513     -5.5656241
Variety_NE87522     -7.6500899
Variety_NE87612     -2.7225851
Variety_NE87613     -0.8793319
Variety_NE87615     -4.0089291
Variety_NE87619      0.7975626
Variety_NE87627    -10.1315147
Variety_NORKAN      -7.1804945
Variety_REDLAND      0.6753066
Variety_ROUGHRIDER  -0.9637487
Variety_SCOUT66      0.7088916
Variety_SIOUXLAND   -1.1998807
Variety_TAM107      -3.7160351
Variety_TAM200      -9.0340942
Variety_VONA        -2.7970689
(Intercept)         28.3487457

nlme

Работаю, пока не разобрался. Может быть что-то вроде этого. До сих пор не мог понять, как это сделать rcov=~Column:ar1(Row)сnlme

nin89$Int <- 1
sp1.lme <- lme(yield~Variety, random=~1|Int, data=na.omit(nin89))

1

Модель 3

ASReml-R,

sp2.asr <- asreml(yield~Variety, rcov=~ar1(Column):ar1(Row), data=nin89, na.method.X="include")

> summary(sp2.asr)
$call
asreml(fixed = yield ~ Variety, rcov = ~ar1(Column):ar1(Row), 
    data = nin89, na.method.X = "include")

$loglik
[1] -399.3238

$nedf
[1] 168

$sigma
[1] 6.978728

$varcomp
                 gamma  component  std.error   z.ratio    constraint
R!variance   1.0000000 48.7026395 7.15527571  6.806536      Positive
R!Column.cor 0.4375045  0.4375045 0.08060227  5.427943 Unconstrained
R!Row.cor    0.6554798  0.6554798 0.05637709 11.626704 Unconstrained

attr(,"class")
[1] "summary.asreml"
> summary(sp2.asr)$varcomp
                 gamma  component  std.error   z.ratio    constraint
R!variance   1.0000000 48.7026395 7.15527571  6.806536      Positive
R!Column.cor 0.4375045  0.4375045 0.08060227  5.427943 Unconstrained
R!Row.cor    0.6554798  0.6554798 0.05637709 11.626704 Unconstrained
> anova(sp2.asr)
Wald tests for fixed effects

Response: yield

Terms added sequentially; adjusted for those above

              Df Sum of Sq Wald statistic Pr(Chisq)    
(Intercept)    1   16165.6         331.93 < 2.2e-16 ***
Variety       55    5961.7         122.41 4.866e-07 ***
residual (MS)         48.7                             
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
> coef(sp2.asr)$fixed
                         effect
Variety_ARAPAHOE     0.00000000
Variety_BRULE        0.03029321
Variety_BUCKSKIN     8.89207227
Variety_CENTURA     -0.68979639
Variety_CENTURK78    0.16461970
Variety_CHEYENNE     0.50267820
Variety_CODY        -3.26960093
Variety_COLT        -0.51826695
Variety_GAGE        -0.95824999
Variety_HOMESTEAD   -4.57873078
Variety_KS831374     0.27843476
Variety_LANCER      -2.95379384
Variety_LANCOTA     -4.67006598
Variety_NE83404     -1.32290865
Variety_NE83406     -1.66351994
Variety_NE83407     -2.64471830
Variety_NE83432     -4.42828427
Variety_NE83498      1.80418738
Variety_NE83T12     -2.11789109
Variety_NE84557     -2.34685080
Variety_NE85556      2.78001120
Variety_NE85623     -1.42164134
Variety_NE86482     -1.63334029
Variety_NE86501     -2.94339063
Variety_NE86503     -0.95747374
Variety_NE86507      0.46223383
Variety_NE86509     -3.27166458
Variety_NE86527      1.86588098
Variety_NE86582     -3.87940069
Variety_NE86606      0.22753741
Variety_NE86607      0.60702026
Variety_NE86T666   -10.27005825
Variety_NE87403     -7.43945904
Variety_NE87408     -3.10433009
Variety_NE87409      1.29746980
Variety_NE87446     -4.15943316
Variety_NE87451     -1.85324718
Variety_NE87457     -2.31156727
Variety_NE87463     -4.47086114
Variety_NE87499     -1.85909637
Variety_NE87512     -4.06473578
Variety_NE87513     -3.99604937
Variety_NE87522     -5.52109215
Variety_NE87612     -1.95543098
Variety_NE87613     -0.83160454
Variety_NE87615     -1.92104271
Variety_NE87619      2.98322047
Variety_NE87627     -7.33205188
Variety_NORKAN      -5.78418023
Variety_REDLAND      1.75249392
Variety_ROUGHRIDER  -0.97736288
Variety_SCOUT66      2.13126094
Variety_SIOUXLAND   -2.54195346
Variety_TAM107      -1.59083563
Variety_TAM200      -6.54229161
Variety_VONA        -1.52728371
(Intercept)         27.04285175

nlme

Работаю, пока не разобрался. Может быть что-то вроде этого. До сих пор не мог понять, как это сделать rcov=~ar1(Column):ar1(Row)сnlme

nin89$Int <- 1
sp1.lme <- lme(yield~Variety, random=~1|Int, data=na.omit(nin89))

Я не мог понять, как установить модель 2 и 3 с nlme. Я работаю над этим и обновлю ответ, когда сделаю это. Но я включил вывод ASReml-Rдля моделей 2 и 3 в целях сравнения. Кевин имеет хороший опыт анализа таких моделей, а Бен Болкер обладает прекрасным авторитетом в области смешанных моделей. Я надеюсь, что они могут помочь нам на моделях 2 и 3.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.