問題タブ [lmer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 複数の予測子を持つ混合モデルでランダムな切片と勾配をプロットする方法は?
複数の予測子がある場合、混合モデルのランダム切片または勾配をプロットすることは可能ですか?
1 つの予測子を使用すると、次のようになります。
しかし、代わりに次のようなモデルがある場合はどうなるでしょうか?:
またはlmerで
プロットしている変数のすべての係数または係数のみを考慮する必要がありますか?
ありがとう
r - lmer オブジェクトから処理手段を抽出し、エラー バーを計算する
[背景として私が持っている実験の詳細を説明していますlmer
-sの方法については明確ですが、必要な値を抽出する/手動で計算する方法が不明であるため、これをCVではなくSOに投稿しました。これが正しい投稿場所であったことを願っています!]
データはこちら。
私の実験には、ブロック/プロット/サブプロットのレベルを持つ分割プロット デザインがあります。
6ブロックあります。各ブロックには 2 つのプロットがあり、各プロットには 2 つのサブプロットがあります。処理 1 には 2 つのレベル (A と B) があり、プロット レベルで適用されます。各ブロックには、処理 1 レベル A を受け取る 1 つのプロットと、処理 1 レベル B を受け取る 1 つのプロットがあります。
処理 2 はサブプロット レベルで適用され、さらに 2 つのレベル (C および D) があります。各プロットには、処理 2 レベル A を受け取る 1 つのサブプロットと、処理 2 レベル B を受け取る 1 つのサブプロットがあります。
実験は 3 年間行われた。2 つの治療法の各組み合わせが従属変数 (DV) にどのように影響するかに興味があります。
そのため、4つの治療の組み合わせがあります。
分割プロットの設計を考慮して、モデルに lmer を使用しています。私はクロスイヤーモデルを実行していますが、各年のモデルも順番に実行しています(実験での複製では、クロスイヤーモデルでの年の効果のテストが許可されていないため、モデルは過剰にパラメータ化されていました)。
各年のlmer
s は次のようになります。
時間の経過に伴うこれらの治療手段の変化をグラフで表現するために、毎年の各治療の各レベル (上記の 4 つのレベルを参照) の治療平均を抽出し、これらを実験の年ごとにプロットします。この投稿の例
オブジェクトから 4 つの異なる処理の組み合わせ (上記のリストなど) の処理手段を抽出することは可能lmer
ですか? それとも、手で計算する必要がありますか?
私が考えた 1 つの方法は、4 つの治療の組み合わせを表す別の因子を実際に作成することです (貼り付けたデータの列 "TMT1x2" を参照)。次に、毎年次のモデルを実行できます。
4 つのレベルのそれぞれの処理手段をそのように抽出します。ただし、この新しい 4 レベル ファクターは、それを構成するレベルのネストされた性質を無視するため (ランダム効果はそれを無視しませんが)、この方法が分割プロット デザインを適切に制御するかどうかはわかりません...
さらに、手動で処理手段を計算する必要がある場合、私の実験で入れ子のレベルを考慮してこれを行う方法を知っている人はいますか?
また、これらの各処理手段のエラーバーを計算したいと思います...
誰かがこれについて何か洞察を持っているなら、それは大歓迎です!
r - 新しいバージョンのlmerの反復を増やしますか?
lme4 をバージョン 1.0-4 に更新したところ、lmer() を実行すると、以前は収束していた混合効果モデルが次の警告を出力するようになりました。
ですから、これを修正できるかどうかを確認するために、反復回数を増やしたいと思います。(メッセージの最初の部分が少し不透明に聞こえるため、警告の原因がわかりません)。いずれにせよ、lmerControl()を使用する必要があるというドキュメントを読みましたが、実装できませんでした。誰かが具体的にどのようにそれを行うかの具体例を教えてもらえますか? (ヘルプ ファイルは役に立ちません)。これが私のモデルです:
どうもありがとう!
r - lme4 1.0-5 で lmer を使用した場合の na.action = na.exclude の動作は、lm および古いバージョンの lme4 と矛盾します
簡単な例を考えてみましょう:
これは私が期待するように動作します。8 番目の観測値には適合値はありませんが、x はその行の NA であるため、適合値は NA で「パディング」され、入力データ フレーム df の行数と同じ長さになります。ハンディ。しかし、na.action = na.exclude を呼び出しても、lme4 では同じ効果がなくなりました。
lme4 の古いバージョンでは、lm() の場合と同様に、長さは 8 で、最後の値は NA であると確信しています。
lmer を lm と同じように動作させるにはどうすればよいですか --- 入力データ フレームの行数と同じ長さになるように、(適切な場所で) NA を使用して適合ベクトルをパディングしますか?
より一般的には、ここで na.action と na.exclude が行っていること、および/または行おうとしていることについて、私が見逃していることはありますか?
私の目標は、lmer モデル オブジェクトに適用されたときに、fitted() を取得して、入力データ フレームと同じ長さの行数 (および同じ順序で!) で、"適切な場所。これを行う簡単な方法はありますか?
ありがとう、
デイブ・ケイン
更新: 回避策を提供してくれた Ben Bolker に感謝します! predict() は fit() と同じではありませんが、それを使用すると私の主な問題が解決されます。
r - 混合モデルからすべての固定効果を削除
を使用して、混合モデル ステートメントから固定効果を特定して削除する方法を自動化しようとしていlmer
ます。簡単に言えば、私のアプローチは、 を使用fixef
して固定効果名を取得し、 を使用update
してそれらをモデル ステートメントから削除することです。いくつかの障害に遭遇しました...
まず、固定因子が連続的でない場合fixef
は、変数名に処理レベルが追加されて返されます (たとえば、およびlevels(variable1)=c("A","B","C")
が返さvariable1B
れvariable1C
ます)。部分一致でこれを回避しようとしましたが、すべての場合に成功するとは限りません (以下を参照)。
第 2 に、交互作用がある場合、部分一致はバラバラになり、最初の項のみを識別します (たとえば、 のみvariable1
が から返されvariable1:variable
ます)。これを回避する方法がわかりません。
コード例を次に示します。
どんな助けでも大歓迎です!