(8):重回帰分析の式であれこれ遊んでみる

重回帰分析って難しい?

重回帰分析について何か書こうと思うと、あれもこれも書けてしまうのですが、ここでは、過去問の学習にわりと直結しそうな、式の解釈について書いてみます。「社会統計学入門 ‘12」の第11章でとりあげられている重回帰分析の例を使って、式の解釈を練習しましょう。次の式です。
年収(予測値)= 定数(100.2) + 243.5×性別 + 14.6×勤続年数

大事なのは独立変数と従属変数

当然のことですが、どの変数を使って、何の予測値を計算するのか、ということがわかっていないと始まりません。問題の選択肢の中にも、これを逆に書いてあるものがあるので、けっこう間違いやすいところなのでしょう。上の式を見て、確かめましょう。

  • 「従属変数」、つまり、予測値を知りたいものは何ですか。

  • 「独立変数」、つまり、予測値の計算に使いたい変数は何ですか。

答えは次回、というわけにいかないので書いてしまいますが、従属変数は「年収」、独立変数は「性別」と「勤続年数」です。あれ、「定数」は? 「定数」は定数であって、どっちにも入りません。

性別に243.5をかけたら何になる?

性別は通常、「男」とか「女」とかで回答しますね。性別が男性の場合、「243.5×性別=243.5男」になる、というのは嘘ですよ。これでは計算できません。式にはあえて書き加えてないのですが、ここは「ダミー変数」で、カテゴリ変数を予測値の計算に使いたいときに、たとえば「男性=1、女性=0」みたいに、カテゴリに1と0を割り振ります。ですから、男性の場合は「243.5×1=243.5」、女性の場合は、「243.5×0=0」です。
え? ということは、女性の方が、女性であるというだけで、年収が243.5万円少ないってことなの!!! はい、その通りですが、怒らないでくださいね、ただの例です。

いろんな人を想像してみよう

では、いろいろな人を想像して、上の式にあてはめ、年収の予測値を計算してみましょう。

  • Aさん、男性、勤続3年:100.2+243.5×1+14.6×3=387.5

  • Bさん、女性、勤続3年:100.2+243.5×0+14.6×3=144.0

  • Cさん、女性、勤続8年:100.2+243.5×0+14.6×8=217.0

  • Dさん、男性、勤続8年:100.2+243.5×1+14.6×8=460.5

  • Eさん、男性、勤続10年:100.2+243.5×1+14.6×10=489.7

AさんとBさんを比較しましょう。勤続年数は同じで、性別が違います。年収の差は、387.5-144.0=243.5で、ちょうど性別の係数と同じです。当然ですね。女性であるBさんは、性別を0に置き換えて計算されるので、その分少なくなります。勤続年数はAさんと同じなので、ちょうど性別の係数の分だけ差が出ることになります。
つまり、「性別」の係数は、「性別」以外の条件が全く同じ時に、年収の予測値がどのくらい違うかを示していると言えますね。具体的には(ダミー変数が女性=0、男性=1となっていますから)、「性別以外の条件が全く同じなら、女性より男性の方が、年収の予測値が243.5万円多い」となります。

BさんとCさんを比較しましょう。性別はどちらも女性で、勤続年数が違います。年収の差は、217.0-144.0=73.0で、これは14.6×5=73.0、つまり、勤続年数の係数のちょうど5倍です。なぜ5倍なのかというと、BさんとCさんの勤続年数が5年違うからです。
つまり、「勤続年数」の係数は、「勤続年数」以外の条件が全く同じ時に、勤続年数1年につき年収の予測値がどのくらい違うのかを示していると言えますね。具体的には、「勤続年数以外の条件が全く同じなら、勤続年数が1年増えるごとに、年収の予測値が14.6万円多くなる」となります。

以下、CさんとDさんとでは、勤続年数が同じで性別が異なりますから、男性であるDさんのほうが、性別の係数の分だけ年収が多い。また、DさんとEさんとでは、性別が同じで勤続年数が2年異なりますから、勤続年数が2年長いEさんの方が、勤続年数の係数の2倍分だけ年収が多い。
こうして考えてくると、性別も勤続年数も異なるときに(たとえばAさんとCさん)、年収の違いをどう計算すればよいかわかってきますね。

どうやったら年収の予測値が100.2になるのか?

上の計算式を眺めればわかってきますね。こういうことです。

  • Fさん、女性、勤続0年:100.2+243.5×0+14.6×0=100.2

これが「定数」の意味ですね。すべての独立変数が0のときの予測値です。だけどね~。勤続0年って何? という話です。「こんなん意味ないでしょ?」その通りですね。ただの数学の問題ではなくて、統計の問題ですから、「ここにこんな数が入るわけないでしょ~!」という数を入れて、計算して遊んでも意味がないのです。注意しましょう。次のやつもそうですね。

  • Gさん、男性、勤続100年:100.2+243.5×1+14.6×100=1803.7

勤続年数100年て、あんたいくつ? って話ですね。名前が「Gさん」というところがまたなんとも。いやはや。

くどい話ですが

上の説明で、「性別以外の条件が全く同じなら」とか、「勤続年数以外の条件が全く同じなら」という書き方をしていますが、独立変数が2つしかないんだから、もっと簡単に書けるじゃん! と思われたかもしれません。でも、重回帰分析の独立変数3つ以上になることもしばしばです。そのときにも応用できるように、あえてこのような書き方をしています。

くどい話ですが2

上の説明では単に「予測値」と書いていますが、厳密には「予測値の平均的な値」と書くべきです。だって、性別と勤続年数をあてはめたら、その人の年収がばっちり予測できるわけではありません。年収は性別と勤続年数だけで決まるのだ、他のことは一切考慮しない、なんていう会社があったら、そっちの方がおかしいでしょう。勤続年数が同じでも、昇給には差が出るかもしれないし、勤めている会社によって昇給制度も異なるかもしれない。
計算された予測値は、「今回分析したデータから予測した値」であって、データを取り直せば違う予測値になる可能性があります。そして、予測値の「平均的な値」であって、さまざまな要因で、予測値より高くなったり低くなったりするのです。ああ、また難しくなっちゃったね。