lme4、nlme、ベイジアン回帰パッケージまたは利用可能な任意のものを使用して混合モデルに適合させたい。
Asreml-Rコーディング規約の混合モデル
具体的に説明する前に、ASREMLコードに不慣れな人のために、asreml-Rの規則について詳しく知りたいと思うかもしれません。
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は、それぞれパラメーターγとφの関数です。
パラメーターθは、スケールパラメーターと呼ばれる分散パラメーターです。
たとえば、複数のセクションまたは変量を持つデータの分析で生じる、複数の残差分散を持つ混合効果モデルでは、パラメーターθは1に固定されます。単一の残差分散を持つ混合効果モデルでは、θは残差分散(σ2)に等しくなります。この場合、Rは相関行列でなければなりません。モデルの詳細については、Asremlマニュアル(リンク)を参照してください。
エラーの分散構造:R構造およびランダム効果の分散構造:G構造を指定できます。
asreml()の分散モデリングでは、直接積による分散構造の形成を理解することが重要です。通常の最小二乗の仮定(およびasreml()のデフォルト)は、これらが独立して同一に分布している(IID)ということです。ただし、データがr行c列の長方形配列にレイアウトされたフィールド実験からのものである場合、たとえば、残差eを行列として配置し、潜在的にそれらが行と列内で自己相関していると考えることができます。フィールド順のベクトル。つまり、列内の残差行(ブロック内のプロット)を並べ替えることにより、残差の分散は次のようになります。
は、それぞれ行モデル(次数r、自己相関パラメーター½r)および列モデル(次数c、自己相関パラメーター½c)の相関行列です。より具体的には、2次元の分離可能な自己回帰空間構造(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を参照してください。
次のmodel1は、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 and rcovは、ランダムおよびrcov式を指定して、GおよびR構造を明示的に指定しています。idv()は、分散モデルを識別するasreml()の特別なモデル関数です。式idv(units)は、eの分散行列をスケーリングされた単位に明示的に設定します。
#モデル2:一方向に相関がある2次元空間モデル
sp.asr <- asreml(yield ~ Variety, rcov = ~ Column:ar1(Row), data = nin89)
nin89の実験単位は、列と行で索引付けされています。そのため、この場合の行と列の方向の2方向のランダムな変動が予想されます。ここで、ar1()はRowの1次自己回帰分散モデルを指定する特別な関数です。この呼び出しは、エラーに対して2次元の空間構造を指定しますが、行方向の空間相関のみを使用します。列の分散モデルは恒等(id())ですが、これがデフォルトであるため、正式に指定する必要はありません。
#モデル3:2次元空間モデル、両方向のエラー構造
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と同様ですが、相関は2方向-自己回帰です。
これらのモデルのどれだけがオープンソースのRパッケージで可能かはわかりません。これらのモデルのいずれかのソリューションが大きな助けになる場合でも。+50の賞金がそのようなパッケージの開発を刺激する場合でも、大きな助けになります!
MAYSaseenが比較のために各モデルとデータ(回答として)からの出力を提供しているを参照してください。
編集:混合モデルディスカッションフォーラムで受け取った提案は次のとおりです 。「David Cliffordの回帰パッケージとspatialCovarianceパッケージを見ることができます。 (たとえば、血統データに使用しました。spatialCovarianceパッケージは、回帰を使用してAR1xAR1よりも精巧なモデルを提供しますが、適用できる場合があります。正確な問題への適用については、著者に連絡する必要があります。」
corStruct
はnlme
(異方性相関の)新しいを定義することだと思いますASREML構文...
MCMCglmm
確信していますspatialCovariance
)私はに慣れていないんだこれは、言及したことはRで終らせる唯一の方法は、新しい定義することであるcorStruct
可能であるが、簡単ではありません-秒。
lme4
。(b)より関連性のある専門知識がある場所に投稿することを検討するのでlme4
はなく、asreml-R
(a)これを行う必要がある理由を教えてくださいr-sig-mixed-models
。