lmer()はランダム効果としてスプラインを使用できますか?


19

時間の経過に伴ういくつかのカウントデータのランダム効果モデルに取り組んでおり、いくつかの傾向を制御したいとします。通常、次のようなことをします。

lmer(counts ~ dependent_variable + (1+t+I(t^2)|ID), family="poisson")

の2次形状を含めるにはt。LOESSスムーザーやスプラインなど、より洗練されたスムージング手法を使用して、その関係をモデル化することは可能ですか?

回答:


25

表示するものがlmerランダム効果項の式で機能する場合、Rに付属するスプラインパッケージの関数を使用して、関連する基底関数を設定できるはずです。

require("lme4")
require("splines")
lmer(counts ~ dependent_variable + (bs(t) | ID), family="poisson")

あなたが何をしたいのかに応じて、あなたも見なければならないgamm4のパッケージとmgcvのパッケージ。前者はbs()lmer()上記の呼び出しのビットを本質的に形式化しており、分析の一部としてスムーズな選択を実行できます。後者の機能をgam()使用すると、このようなモデルのフィッティングにある程度の柔軟性が得られます(何をしようとしているのか理解している場合)。内で別々のトレンドが必要なようですID。より固定効果のアプローチは次のようなものになります。

gam(counts ~ dependent_variable + ID + s(t, by = ID) , family="poisson")

ランダム効果は、例にあるようなタイプの用語gam()を使用してモデルに含めることができます。アイデアという用語をランダムな効果と組み合わせることが理にかなっているかどうかは、私がコメントする資格があるものではなく、考えるものです。s(foo, bs = "re")fooIDby

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.