医療職からデータサイエンティストへスマートフォン用の表示で見る医療職からデータサイエンティストへ統計学、機械学習に関する記事をまとめています。Python前回は因果推論の王道テクニックである傾向スコアを使った回帰分析とマッチングについて紹介しました。今回も傾向スコアを使った解析手法の一つであるIPWと、傾向スコアは使いませんが理論的には同じになるStandardzationの紹介をしていきます。effect)を推定するモデルになります。集団全体の因果効果であるため、交絡因子の層ごとに要因の結果の関係性が異なっていたとしても、効果を推定することができます。具体的な解析手法のみが気になる方は後半にRとPythonコードをのせてありますので、そちらをご参照ください。effectと呼びます。effectによる集団全体の推定値は、全ての条件間で要因と結果との関連が等しいことを条件としているため、現実ではかなり厳しい前提になります。effectと呼びます。この二つはあまり意識されることはありませんが、とても重要な違いになります。実際に解析を通してイメージを掴んでいきます。今回のデータ今回は岩波データサイエンスvol3のデータセットを使います。データはこちらからダウンロードできます。見るgithub.comデータはスマホゲームプレイ時間やそのゲームCMをみたかどうか、TVの視聴時間、年齢や性別、居住地などを含んでいます。変数は以下を使います。今回の目的はCMを見たかどうかとゲームのプレイ時間の因果関係を推論してみます。今回は成書の内容には沿わず、筆者オリジナルの解析を行っていくため、成書の内容とは異なっていることをご了承ください。effectですが、回帰分析で求めることができます。回帰分析については以前の記事でしっかりまとめてありますので、ご参考にしてみてください。www.medi-08-data-06.workさて、年齢、性別、子どもの有無、TV視聴時間を変数に入れて重回帰分析でCMとゲームプレイ時間の関連を解析してみましょう。0.27この結果から、"交絡因子を除いた場合のCMの効果は-116である”、つまり、CMをみた方がゲームのプレイ時間が116秒短くなるという解釈になりそうですが、厳密にはそうではありません。厳密には、"もし性別、年齢、子供の有無、テレビの視聴時間が同じ人たちで比べた時、CMの効果は平均的に-116である"となります。性別が女で、年齢が50歳で、子供がいなくて、テレビの視聴時間が3600秒で、、CMをみていない人を比べた時もゲームのプレイ時間は116秒違うという解釈になり、その他全ての条件を変えても、CMの効果は116秒であるという前提を置いています。実際に私たちが知りたいのは、もしターゲット全体がCMをみたらゲームプレイ時間はどれぐらい異なるのかということだと思います。effect"で、IPWやStandardizationというテクニックで求めることができます。effectは少しイメージしにくいですが、一番分かりやすいものとしてはそれぞれの条件で、要因と結果との関連を重み付け平均することです。男女によるCMとゲープレイ時間の関係を考えてみます。CM1、CM0の男女による平均値の違いをみてみましょう。-615男性(1)の方がゲームプレイ時間は長いようですね。女性でのCM効果は-273、男性では-615です。effectを求めてみます。effectは集団全体に対するCMの効果なので、純粋な平均ではなく、男女の比率で加重平均値を計算します。男女の人数は以下になります。effectになり、もし男女関係なく無作為にCMをみるかみないかが決まる場合、CMがゲームプレイ時間に与える影響は-492秒であると言えます。これがStandardizationという手法です。式で表すととなります。ややこしいですが、それぞれで層別化した平均因果効果をその層に含まれる確率をかけて求めています。これはあまり実用的ではありません。変数が多くなった場合、もしくは0or1のように2値ではない場合は、層別化することができなくなるからです。effectを求めていきます。IPWは少し混みいった理論になるのですが、直感的な理解としてはこうです。effectは集団全体へ介入した時の効果である。(今回はCMをみた時の効果)しかし、観察データでは介入条件の群と非介入条件の群では、背景因子に偏りがある。(男性の方がCMを見る人が少ないなど)その偏りが2群の間で全て同じになれば、単純に平均値を比較するだけで集団全体の効果を推定できる。その偏りを同じにするために、各個人を仮想的に増やして均等にする。どれぐらい増やすかは介入、非介入に割り当てられる確率で決めよう。