ユーザ用ツール

サイト用ツール


メモ:マルチレベルモデル

マルチレベルモデルに関するメモ

いろいろ調べたりして、ちょっとまとめた資料を作成する機会があったので、なくさないように添付しておく。検証用に、サンプルデータもおいておく。サンプルデータは、意図的に生成したものであり、PDF中の設定も架空のもの。

[安藤正人(2011)『マルチレベルモデル入門 実習:継時データ分析』ナカニシヤ出版]に基づいて、マルチレベルモデルを勉強したメモ。 本書は、SPSS/SASをベースに分析が進められているが、この内容をRでできるだけ再現してみる。Rについても、併せて勉強する。Rでの分析コードについても付録に収録されているのが参考になるが、細かいところはやはり自力で何とかする必要がある。本書では、Rでのタイプ3平方和の計算がうまくいかないとの言及があるが、カテゴリカル変数をダミー変数に変換する方式を適切に設定すれば、SPSSと同等の結果が得られる。また、「パラメータの線形結合に対する検定」については、Rでの方法が記載されていないが、lm関数の推定結果のsummaryにほとんど出力されるし、出力されないものも容易に値を得ることができた。

R環境の準備

必要なライブラリをあらかじめインストールしておく。線形モデルを扱う関数(lm)は標準で入っているが、分散分析でType2/3平方和を計算する関数や混合モデルのためのライブラリが無いので、carおよびlme4と関連パッケージをインストールしておく。

install.packages("car");
install.packages("lme4");

#混合モデルを推定するlmer関数において、固定効果の検定をしてくれるパッケージ。混合モデルでは自由度の求め方にいくつか方法があるため、lmer関数単体では出力しない方針のようだ。
install.packages("lmerTest");
#こちらはlmerTestパッケージのさらに補助パッケージ。Kenward-Roger法で自由度を求めるために必要。
install.packages("pbkrtest");
  
library(car);
library(lme4);
library(lmerTest);
library(pbkrtest);

サンプルデータも読み込んでおく。

df1 <- read.csv("sample.csv");
メモ/マルチレベルモデル.txt · 最終更新: 2017/02/11 09:57 by Wiki Editor

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki