問題タブ [lme4]

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.

0 投票する
2 に答える
3252 参照

r - lme4 で遺伝的アルゴリズムを使用すると、glmulti が無制限に実行される

R でのモデル平均化に glmulti を使用しています。私のモデルには 10 個までの変数があり、徹底的なスクリーニングは非現実的です。したがって、遺伝的アルゴリズム (GA) を使用する必要があります (call: method = "g")。

ランダム効果を含める必要があるため、lme4 のラッパーとして glmulti を使用しています。これを行う方法は、http://www.inside-r.org/packages/cran/glmulti/docs/glmultiで入手できます。また、glmulti パッケージに含まれる PDF で詳細が説明されています。問題は、この設定で GA を使用するように glmulti に指示すると、最適なモデルが見つかった後でも、GA が無期限に実行されることです。

これは、glmulti パッケージに含まれている pdf からの例です。

これはうまくいきます。問題は、遺伝的アルゴリズムを使用するように指示したときです。

無期限に実行し続けるだけで、AIC は変更されません。

glmulti にいつ停止するかを伝える呼び出し (deltaB = 0、deltaM = 0.01、conseq = 6) を使用してみましたが、何も機能していないようです。問題は関数の設定にあるに違いないと思います(?)。それは本当に明白なことかもしれませんが、私はRに慣れていないのでうまくいきません。

これについての助けは大歓迎です。

0 投票する
1 に答える
782 参照

r - Rのlmer()を使用した混合モデル設計の正しいフォーマット

を使用して、混合効果モデルの正しい形式を特定しようとしていますlmer()。以下の3つのモデルはすべて同じことを達成しようとしています-単純な固定効果モデル-したがって、2つは間違っているに違いありません。

モデルにshoppersは、商業センターの個人消費に関するデータがあります。消費者が中心からどのように分布しているかを説明する一般的な逆二乗距離関係があります。これはモデルに反映されます。これはgravity、距離の影響をモデル化するために、より近い地区ゾーンをより遠くのゾーンよりも高く重み付けするマトリックスです。 Population住宅地のサイズも示されています。これは正しい形式である必要があると思いますr3が、より高いAICスコアが得られますr2。なぜこれが正しいのか、そしてどちらが正しいのか、何か考えはありますか?

よろしくお願いします!

0 投票する
0 に答える
884 参照

mixed - ezMixed で混合モデルを指定し、ezPlot2 で予測とプロットを取得 (ez パッケージ)

私は ez パッケージの初心者であり、ezMixed を使用して混合効果 anova を実行しようとしています。これは、反復測定データが不均衡であり、反復観測の一部に欠落データがあるためです。私の応答変数 'c​​ount' はカウント データの平均であり、ポアソン分布に従いません。まず、ezMixed を使用してモデルを正しく指定したかどうか確信が持てません。lme() を使用すると、私のモデルは次のようになります。

私の繰り返し測定(因子内)は、ランダム因子サイトIDにネストされたtimepointIDです。グループ化変数「MPA」(効果間) の主効果と、反復測定「時点 ID」の効果、およびそれらの相互作用をテストすることに興味があります。設計のバランスがとれていれば、ezAnova を使用して wid=.siteID と within=.timepoint ID を指定できたはずですが、これを ezMixed に変換する方法がわかりません。私の試みは次のとおりですが、siteID と timepointID が交差しているように見えます。

どうすればこれを修正できますか?

また、print(er$summary) コマンドを実行すると、次の結果が得られます。

したがって、ここで最も強力な証拠を持つ主な効果は「timepointID」であると理解していますが、両方の相互作用は証拠の強さをほとんど示していません。

次のように、ezPredict と ezPlot2 を使用して予測を生成してプロットしようとしました。

次のエラーメッセージが表示されます。

私はそれをグーグルで調べてきましたが、それを修正するのに役立つ手がかりを見つけることができないようです...

よろしくお願いします;0

0 投票する
1 に答える
788 参照

r - lmer() で予測子のマトリックスを使用する

モデル式でそれらを列挙するのが面倒になるように、多数の予測子を使用してモデルを適合させようとしています。これは、lm() を使用して簡単に行うことができます。

非常に多数の予測変数 (この発明された例では 26 を超える) があるため、最初の例 ( someDV ~ A + B + C + D...) のようにそれらを個別にリストしたくありません。予測変数を含めるだけでこれを回避できas.matrixます。

ただし、次のような混合効果モデルを当てはめたいです。

多数のランダム効果項を含めたいことを除いて。と入力するのではなく、上記(1 | A) ... (1 | ZZZ)で使用した行列アプローチに似た方法で各予測子を含めたいと思いolsModel2ます。以下は、明らかに機能しません。

lmer() を使用したランダム効果の行列予測アプローチを最もよく再現する方法について何か提案はありますか? 私は、「実用的な」解決策 (つまり、ハック) を喜んで検討します。ただし、それらが「プログラム的」であり、コピー & ペーストなどを必要としない限りは。

お時間をいただきありがとうございます。

0 投票する
1 に答える
3029 参照

r - lmer()とanova()間のモデル適合性推定の違い

lmer()個々の効果を考慮に入れて、生物学的データに対する治療効果を経時的にモデル化したいと思います。通常使用される手順は、固定効果と相互作用の項を段階的に削除していくつかのモデルを構築し、anova(model1,model2)有意でない差が見つかった場合に最も偏狭なモデルを使用して維持することで最適なモデルを見つけることです。summary(model1)ただし、との出力の間に異なるモデル適合度値(AIC、BIC ..)が見つかりましたanova (model1,model2)。コードは次のとおりです。

出力を比較すると、2つのモデルの間に14のAICユニットの違いがありsummary()ますが、の中には9つしかありませんanova()。この違いはどこから来るのですか?前もって感謝します。

0 投票する
0 に答える
1314 参照

r - R 区分成長回帰、lmer()

Raudenbush/Bryk(1992/2002)、Hierarchical Linear Models、p178 - 179 に基づいて、データを使用して区分的な成長回帰を実行したいと考えています。

これを行うには、マルチレベル モデルを適用する必要があります。

I は、使用する必要がある lme4 パッケージです。

私のデータには、ID ごとの経時的な売上高が含まれています。sales>10 と sales>25 の 2 つのブレークポイントがあります。ブレークポイント前後の売上の伸びを分析したいと考えています。

ID ごとに 2 つの変数があります。 0)

私のマルチレベルモデルの形式は次のとおりです。

Y= b0i + b1i*a1ti + b2i*a2ti + eti

(申し訳ありませんが、画像と数式を投稿することは許可されていません :( )

a1ti と a2ti は、ピースを指定するコード化された変数 (var1 と var2) です。

レベル 1: 個々のレベルごとの反復観察
レベル 2: 被験者間レベル

lmer() コードでレベル 1 とレベル 2 を指定する必要がある場所と、2 つのピースの 2 つの勾配を取得する方法を誰かが説明してくれませんか? インターセプトのみを取得するために、ブラケットの間に仕様を O + ... または 1 + ... として追加する必要がありますか?

私のコードは次のようになります。

またはこれ:

ありがとうございました!

おめでとうアレクサ

0 投票する
4 に答える
42010 参照

r - qqmath または dotplot を使用して lmer (lme4 パッケージ) からのランダム効果をプロットします。

qqmath 関数は、lmer パッケージからの出力を使用して、ランダム効果の優れたキャタピラー プロットを作成します。つまり、qqmath は、階層モデルからの切片と点推定値の誤差をプロットするのに優れています。Dyestuff と呼ばれる lme4 パッケージの組み込みデータを使用した lmer 関数と qqmath 関数の例を以下に示します。このコードは、ggmath 関数を使用して、階層モデルと適切なプロットを生成します。

コードの最後の行は、各推定値の周りの誤差を含む各切片の非常に優れたプロットを生成します。しかし、qqmath 関数の書式設定は非常に難しいようで、プロットの書式設定に苦労しています。私は答えられないいくつかの質問を思いつきました.lmer/qqmathの組み合わせを使用している場合、他の人も恩恵を受けることができると思います:

  1. 上記のqqmath関数を使用して、特定のポイントを空にするか塗りつぶすか、ポイントごとに異なる色にするなど、いくつかのオプションを追加する方法はありますか? たとえば、バッチ変数の A、B、および C のポイントを塗りつぶし、残りのポイントを空にすることはできますか?
  2. 各ポイントに軸ラベルを追加することはできますか (たとえば、上または右の y 軸に沿って)。
  3. データの切片は 45 に近いので、ラベルが互いにぶつからないようにラベル間にスペースを追加することはできますか? 主に、グラフ上のポイントを区別/ラベル付けすることに興味がありますが、これは ggmath 関数では面倒/不可能と思われます。

これまでのところ、qqmath 関数に任意のオプションを追加すると、標準プロットであればエラーにならないエラーが発生するので、途方に暮れています。

また、lmer 出力からの切片をプロットするためのより良いパッケージ/関数があると思われる場合は、ぜひお聞かせください。(たとえば、dotplot を使用してポイント 1 ~ 3 を実行できますか?)

編集:合理的にフォーマットできる場合は、代替のドットプロットも受け入れます。私は ggmath プロットの外観が好きなので、それについての質問から始めます。

0 投票する
3 に答える
11557 参照

r - lmer 出力をワード/エクセルに取得する

私はR、というパッケージで作業していますlme4

モデルの実行:

投稿の最後に示されているように、コンソールに出力が表示されます。私はこれを、テーブルのように見えるものをエクセルに、または最終的には単語に、別々の列と行を認識してコピーしたかったのです。Excel への Ctrl-C/Ctrl-V は行を認識しますが、列は認識しません。

を使用write.csv(lmer.rasch)するとエラーが発生します。

as.data.frame.default(x[[i]], optional = TRUE) のエラー: クラス 'structure("mer", package = "lme4")' を data.frame に強制できません

これはパッケージ内の問題ですか、それとも write 関数を間違って使用した一般的な問題ですか、R が実際にこの出力を列に分割していませんか?

0 投票する
1 に答える
2245 参照

r - 関数内で lmer を使用する方法

スクリプトでよく使用するいくつかの呼び出しを収集する関数を作成しようとしています
。例では lme4 パッケージの sleepstudy データを使用しています。これが
(簡略化されたバージョンの) 私が始めた関数です。

以下のようにこの関数を呼び出すと:

出力の最初の 3 行は次のようになります。

コンソールで trimModel1 関数のコマンドを呼び出した場合、モデルの概要の最初の 3 行は次のようになります。

lme4 パッケージを使用するいくつかのパッケージは式とデータ フィールドを使用するため、違いが問題になります。たとえば、効果パッケージはこれらのフィールドを使用し、上記の trimModel1 関数を使用すると、以下のようなコマンドは機能しません。

解決策を求めて、stackoverflow と R のディスカッション グループを調べたところ、モデルの数式フィールドを変更できることがわかりました。trimModel1 関数の行のコメントをlm@call$formula<-frm外すと、集計の数式フィールドが正しく表示されます。残念ながら、エフェクト パッケージから関数を実行すると、まだエラーが発生します。

これは、データ フィールドがまだ正しくないためです。
私が見つけた別の解決策は、次の関数です。

コンソールに次のコマンドを入力すると、エラーは発生しません。

allEffects 関数は機能しますが、問題は、fm2 モデルの要約に生の sleepstudy データが表示されることです。これは sleepstudy データでは大きな問題ではありませんが、非常に大きなデータセットでは、モデルを表示するときに Rstudio がクラッシュすることがありました。
これらの機能の 1 つ (または両方) を正しく機能させる方法を知っている人はいますか?
fm1@call$data フィールドを変更する必要があると思いますが、方法がわかりません。

0 投票する
1 に答える
346 参照

r - R:S4スロットの出力を生成するソースコードを見つけますか?

G'dayみんな、

'lme4'の'lmer'関数を実行すると、多くのスロットを持つS4オブジェクトが生成されます。これらのスロットの1つ、つまりmodel @ Xと、この「X」スロット出力がどのように生成されるかに興味があります。この出力を、この「X」出力を自動的に生成しない別のモデル関数(glmmPQL)で再現してみたい(FYI「lmer」はクラス「mer」のオブジェクトを生成し、スロット「X」はモデルです)固定効果の行列)。以下のコードは、私が話していることを示しています。

私が理解したいのは、この「X」データがどのように生成されたかです。ターミナルに「()」を付けずに「lmer」のコードを記述して調べましたが、何も見つかりませんでした。showMethod('lmer')も試しましたが、関数'lmer':と表示されます。

「X」スロットが特に実行していること(またはS4オブジェクトの任意のスロット)のソースコードを取得する方法があるかどうか疑問に思っていますか?または、これを再現する方法を知っている人はいますか?あなたの助けと時間をありがとう。