静粛に、只今統計勉強中

仕事でデータ分析をすることになったバリバリ文系アラフィフのおっさんが、独学で統計の勉強を始めました。

回帰分析における対数変換の意味を実感してみよう3

前回、目的変数 yと説明変数 xを両方対数にして線形回帰モデルに当てはめたところ、信頼性のある結果が得られた、というお話をしました。

そこで、今回はその意味を考えてみたいと思います。

 

 

まず、通常の線形回帰について考えます。

平成22年の映画館従業者数を説明変数とし、スクリーン数を応答変数として推定された回帰式  y=0.1064x+18.466 では、従業者数が1人増えるごとにスクリーンが0.1064枚増える、従業者数が100人増えるごとにスクリーンが10.64枚増える、と予測されます。

f:id:cyclo-commuter:20190829163859p:plain

つまり、マーカーが単に直線に近いところにプロットされるのではなく、比例関係を伴ってプロットされる、ということを想定しています。

しかし、実際の散布図では左下ほど密集していて、右上に行くにしたがって間隔が開いていくように見えます。

f:id:cyclo-commuter:20190829162226p:plain

もしかすると上の図のように、 x yも指数関数的に増えるのかもしれません。
だとすれば、 x yも対数に変換してあげれば、比例関係のように見えるかもしれません。

Excel散布図の便利機能を使って確かめてみましょう。

 y軸をクリックして選択状態にし、 [軸のオプション]→[軸のオプション]→[対数目盛を表示する]にチェックを入れます。 x軸も同様にします。

f:id:cyclo-commuter:20190829162801p:plain

すると、

f:id:cyclo-commuter:20190829163137p:plain

マーカーが、元の散布図よりも直線に近いところに密集しました。
で、線形回帰の線が曲線になっちゃってます。
これを累乗近似に変更すると、

f:id:cyclo-commuter:20190830155641p:plain

直線になりました!

さらに、スクリーン数と従業者数をそれぞれ対数変換して、散布図を作ってみると、

f:id:cyclo-commuter:20190830160014p:plain

まったく同じ分布になります!!


これが変数を対数変換する意味なんですねえ。

変数 y xを両対数変換した場合の回帰モデルでは、 xが2倍になると yも2倍になる、 xが3倍になると yも3倍になる、といった関係が想定されるのです。

 

また、変数の値が指数関数的に大きくなるような場合、えてして分散も大きくなっていってしまいますが、対数変換することで分散をギュッと縮めることができます。

さらに、対数変換することでデータの分布が 正規分布に近くなることがあります。

f:id:cyclo-commuter:20190830162222p:plainf:id:cyclo-commuter:20190830162556p:plain

f:id:cyclo-commuter:20190830162842p:plainf:id:cyclo-commuter:20190830162924p:plain

これも対数変換の効用ですね。

ていうか、試験問題だから結果から回帰診断することになりましたけど、本来のデータ分析の手順としては、そもそも元データの分布を確認してから始めないといかんのですが。