UnsplashのGanapathy Kumarが撮影した写真
の続きです。
前回の重回帰モデルに年と都道府県を説明変数に加えて、l_numの係数がどうなるかを見てみます。
まず、yearをas.factor()関数でファクター型に変換した変数をつくります。
yfがファクター型に変換した変数ですが、summary()関数で処理すると、最大値などの統計値ではなくて度数が出てきますので、ファクター型に変換されたとわかります。
pref: 都道府県名は既にファクター型に変換したあるので、そのまま使います。
それでは、lm()関数で回帰分析をしてみます。
l_numの係数が-0.079と大きく変化しました。
誤差項が均一分散かどうかを見てみます。
誤差項の2乗が説明変数と相関していることがわかりますので、reg4の回帰モデルは不均一分散です。
不均一分散の時は、通常の標準誤差は無効なので、不均一分散に対応した標準誤差を使わないといけないです。
carパッケージとlmtestパッケージを読み込んで、lmtestパッケージのcoeftest()関数を使います。
coeftest()関数を使って、reg2, reg3, reg4のl_numの係数を表示します。
coeftest()関数の中に vcov = hccm を加えると不均一分散に適応した標準誤差を計算します。rbind()関数はベクトルやマトリックスを縦方向につなげます。
reg4のl_numの係数は-0.07935907ですが、p値が2.24e-01, つまり0.224なので有意ではないです。つまり、年と都道府県を加えて回帰分析すると、tworatioとl_numには関連性は無いということです。
reg4の回帰モデルで、prefが有意かどうかを調べます。
linearHypothesis()関数を使います。
p値が2.2e-16とほとんどゼロですので、prefは全体として有意です。
yrが全体として有意かどうかも調べます。
p値が0.0005923と小さいのでyfは全体として有意です。
今回は以上です。
今回使用した関数は
as.factor()関数 -- ファクター型に変換
lm()関数 -- 線形回帰モデルを作る
summary()関数 -- 回帰モデルのサマリーを表示
carパッケージとlmtestパッケージ -- 不均一分散用の標準誤差を算出するのに使う
rbind()関数 -- ベクトルやマトリックスを縦に結合
coeftest()関数 -- 回帰モデルの係数を表示
linearHypothesis()関数 -- 回帰モデルでF検定をするときに使う
です。
次回は
です。
初めから読むには、
です。