Rで何かをしたり、読書をするブログ

政府統計の総合窓口のデータや、OECDやUCIやのデータを使って、Rの練習をしています。ときどき、読書記録も載せています。

都道府県別の老人福祉費と児童福祉費の分析5 - R言語で回帰分析をする。

 

www.crosshyou.info

 の続きです。

今回はR言語で回帰分析をします。老人福祉費または児童福祉を人口、面積、県内総生産の3つの変数で回帰分析します。事前の予想は、人口と県内総生産は関係あるけど、面積は関係ないんでは?と思います。

早速やってみます。lm関数を使います。

f:id:cross_hyou:20191005125818j:plain

まずは、各変数の交差項と2乗した項目を加えたmaximum modelからスタートします。

p-value は2.2e-16より小さいので有意なモデルです。Adjusted R-squaredは0.9858ですのであてはまりもいいですね。avgPop:avgArea:avgGDPの3変数の交差項はp値が0.05よりも大きいので削除します。

update関数を使います。

f:id:cross_hyou:20191005130251j:plain

anova関数でmodel1とmodel2を比較すると、p値が0.07087と0.05よりも大きいので、model1とmodel2では有意な違いはありません。従って、より単純なmodel2を採用します。model2をsummary関数で見てみます。

f:id:cross_hyou:20191005130532j:plain

I(avgArea^2)はp値が0.334315なので削除しましょう。

f:id:cross_hyou:20191005130857j:plain

p値が0.3343なので、model2とmodel3では有意な違いは無いとわかります。

model3を見てみます。

f:id:cross_hyou:20191005131120j:plain

avgAreaやavgGDPはp値が0.05ですが、avgAre:avgGDPなどの交差項のp値が0.05なので外せないです。残差プロットを見てみましょう。

f:id:cross_hyou:20191005131615j:plain

今度は、対数をとったデータ回帰分析してみましょう。

f:id:cross_hyou:20191005131945j:plain

さきほどと同じような手順で不要な変数を削除していきます。まずは、logPop:logArea:logGDPですね。

f:id:cross_hyou:20191005132207j:plain

anova関数でlmodel1とlmodel2を比較します。p値が0.5586ですから、二つのモデルに有意な違いはありません。なので、より単純なlmodel2をさらに詳しく調べます。

f:id:cross_hyou:20191005132413j:plain

I(logArea^2)を削除しましょう。

f:id:cross_hyou:20191005132618j:plain

p値は0.5492と0.05より大きいですから、lmodel2とlmodel3では有意な違いは無いです。lmodel3を見てみます。

f:id:cross_hyou:20191005132825j:plain

除外できる変数はなくなりましたね。残差プロットを見てみましょう。

f:id:cross_hyou:20191005133103j:plain

f:id:cross_hyou:20191005133140j:plain

老人福祉費は重回帰分析でしたので、児童福祉費は単回帰分析をしてみます。

まずは、人口で回帰してみましょう。

f:id:cross_hyou:20191005133710j:plain

avgPopのp値が0.202なので削除します。

f:id:cross_hyou:20191005133929j:plain

p値が0.202なので、avgPopは無くても大丈夫ですね。ChildPop2を見てみます。

f:id:cross_hyou:20191005134124j:plain

散布図の上に回帰線を描いてみましょう。

まずは、回帰線のxvを作成します。

f:id:cross_hyou:20191005135949j:plain

f:id:cross_hyou:20191005140005j:plain

今回は以上です。