医療職からデータサイエンティストへスマートフォン用の表示で見る医療職からデータサイエンティストへ統計学、機械学習に関する記事をまとめています。R最近はAIを使った予測が流行っていますが、予測よりも現象を解釈したい場合もあるかと思います。行った施策に対しての効果を分析したり、事象が起こった後に要因を解釈したり...そんな時に使うのがマルチレベル分析です。現実の仮定を反映しやすく、様々な仮説について解析をすることができます。学校レベルの影響を追加まとめ参考マルチレベル分析とは?マルチレベル分析とは、複数の階層性をもつデータを解析する時に用いられる分析手法です。テストの点数と勉強時間との関連を調べる時に対象となる学校を選び、そこから数人の生徒を選んだ場合や、残業時間と従業員の満足度を調べる際に、企業を選び、従業員を選んだ場合、季節ごとに商品の売り上げを調査した場合など、二段階以上のレベルからサンプルを抽出したデータを階層性のあるデータと呼びます。www.medi-08-data-06.workなぜマルチレベル分析が必要か?ここでは、テストの点数と勉強時間の関連性を調べることにしましょう。以下の二つの疑問を考えてみます。学校間で平均点数に違いがあるか個人レベルで勉強時間と点数に関連はあるのかとりあえず、二つ目の疑問から考えてみます。全部で7校の学校から生徒を数人ずつ選んだと仮定して、テストの点数と勉強時間から回帰直線を求め、散布図に重ねてみます。X軸が勉強時間、Y軸が点数を表しています。ここからは勉強時間が1時間長いと点数が19点高くなることが分かります。st_dfXは勉強時間、IDは学校内での生徒番号、schoolは学校識別ID、sctypeは公立か私立か(後から使います)、Yはテストの点数を表しています。1333.399今度は、学校ごとに色付けをしてしてみましょう。?どうやら学校ごとに勉強時間や点数に傾向があり、単純に個人レベルで勉強時間が長いほど点数が伸びるとは言えなさそうです。仮に以下のような関係であれば、個人の勉強時間と点数に関連がなくても、学校全体で見ると関連があるように見えてしまいます。これがマルチレベル分析を導入するべき理由です。マルチレベル分析を利用すると、個人レベルと学校レベルの関連を分離させてデータの解釈をすることができます。マルチレベル分析の適応さて、マルチレベル分析を適応すべきかどうかはどのように判断すれば良いでしょうか?もちろんデータが収集された背景を考えて決めても良いですが、何か指標が欲しいところですよね。ところで、目的変数である点数Yのバラツキには、学校間でのバラツキと個人間でのバラツキが含まれています。マルチレベル分析は、バラツキを学校レベルと個人レベルに分離させて解析するというのが大まかな目的となります。そこで級内相関というものを使います。級内相関とは同じ群内にある値がどれぐらい似ているかという指標になるのですが、ここでは学校間の点数のバラツキが学校内のバラツキに比べてどれぐらい大きいかを表します。個人よりも学校による点数の違いが大きい場合は、マルチレベル分析を適応するべきだということになります。この級内相関を求める際には、今回は傾きを0とした線形混合モデルの中のランダム化切片モデルというものを使います。難しそうな名前ですが、各学校の点数の平均値(切片)が全体平均を中心とした正規分布に従い、学校内の生徒の点数は学校の平均値を中心とした正規分布に従うことを前提とするモデルのことを指します。似たようなイメージです。下の図はX軸を各学校、Y軸を点数としたグラフです。赤色の正規分布の分散が、学校間の分散、黒色が学校内の分散を表しています。(ちなみに正規分布を仮定しないようなデータは線形混合モデルでは対応できないので、ベイズ推定による階層ベイズモデルを使います。)www.medi-08-data-06.work難しい方はざっくりとイメージだけでもつかめればOKです。式で表すととなります。ここから級内相関は、として求めることができます。これは、群内のバラツキと比べて、群間のバラツキがどれぐらい大きいか、を表す指標になり、まさにマルチレベル分析を適応すべきかどうかを判断できる指標ですね。これらのパラメータを求めてみると、となってICCは98742/(98743+28116)=約78%となります。---補足---学校内分散や学校間分散の求め方についてご質問頂きましたので、コメントにて回答させて頂きました。----------明確な基準はないですが、回帰分析は全ての観測値が独立であることを前提としているので、級内相関が0.1(10%)でもマルチレベル分析を適応すべきではないかとされています。この級内相関が意味するところは、点数変動の78%は学校間変動によって説明されるという意味になります。ところで、学校間の違いによる影響が大きいということは、学校間で平均点に大きな違いがあるということです。学校間で平均点数に違いがあり、それは切片平均(1617点)を中心に314点(98742の平方根)ぐらいのバラツキがあるということで、第一の疑問に対して答えることができました!Rで実行するには{lme4}パッケージを使います。{lme4}の使い方についてはこちらも参考にしてみてください。estimation)を使うか、通常の最尤法を使うかを表します。今回は通常の最尤法を使うためFALSEとしました。