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

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

World Bank DataBankのG7とBRICのGDPなどの分析5 - R言語で失業率とGDP成長率の相関関係を見る

 

www.crosshyou.info

 の続きです。

今回は、World Bank DataBankのG7とBRICの失業率データとGDPデータの相関をみてみたいと思います。

まずは、全体のGDPデータと失業率データの基本統計量をsummary関数で表示します。

f:id:cross_hyou:20181206120136j:plain

 

これがGDP成長率(GDPG)の基本統計量です。最小値は-14.531%、最大値は19.300%、平均値は3.454%、中央値は3.141%で、NAが25個あります。

f:id:cross_hyou:20181206120358j:plain

 

これが失業率(UER)の基本統計量です。最小値は2.090%、最大値は13.530%、平均値は6.720%、中央値は6.916%で、NAが253個あります。NAが多いですね。

あ、そうだ、データの個数をlength関数で確認しておきましょう。

f:id:cross_hyou:20181206120640j:plain

 

f:id:cross_hyou:20181206120759j:plain

 

両方とも同じ数(あたりまえですが)で550個です。失業率はNAが253個なので半分近くNAなのですね。。少し気になります。
Region, Country, Year, Decade, GDPG, UERだけのデータフレームを作成して、NAの行を削除してしまいましょう。

まずは、カテゴリ変数とGDP成長率と失業率だけのデータフレームを作ります。

f:id:cross_hyou:20181206121513j:plain

このあとにna.omit関数でNAのある行を削除します。

f:id:cross_hyou:20181206121849j:plain

 

Decadeに注目すると、60年代、70年代、80年代が0になっています。つまりこのデータは90年代からだとわかります。国別のデータ個数をtable関数でみておきましょう。

f:id:cross_hyou:20181206122136j:plain

 

全部同じ個数ですね、27年間分のGDP成長率と失業率がある、ということです。

それでは、二つの変数の散布図をggplot関数のgeom_point関数で作図しましょう。

あらかじめ、library(tidyverse)としてggplot2パッケージを呼び出しておきます。

f:id:cross_hyou:20181206122524j:plain

 

f:id:cross_hyou:20181206122539j:plain

 

あんまり相関はない感じですね。cor関数で相関係数を計算してみます。

f:id:cross_hyou:20181206122754j:plain

 

マイナス相関なのですね。

G7とBRICで色分けした散布図を描いてみます。color = Regionと加えます。

f:id:cross_hyou:20181206123048j:plain

 

f:id:cross_hyou:20181206123128j:plain

 

青い点、G7のほうがGDP成長率が狭い範囲に集中している感じですね。

geom_smooth関数も追加してみます。

f:id:cross_hyou:20181206123651j:plain

 

f:id:cross_hyou:20181206123716j:plain

 

全体のプロットにフィットするようなラインが追加されました。このラインが全体的に右下がりなので相関係数がマイナスなのでしょうね。

geom_smooth関数にもcolor = Regionを適用してみましょう。

f:id:cross_hyou:20181206124108j:plain

 

f:id:cross_hyou:20181206124122j:plain

なんとなく、かっこいいグラフですね。こういうグラフが簡単にできてしまうのがR言語のいいところですね。

color = Decadeにしてみましょう。

f:id:cross_hyou:20181206124600j:plain

 

f:id:cross_hyou:20181206124632j:plain

 

ラインが3本になって網掛部分か重なりあってわかりにくいので、se = FALSEを加えます。

f:id:cross_hyou:20181206125022j:plain

 

f:id:cross_hyou:20181206125034j:plain

 

3本のラインの形がわかりやすくなりましたね。

最後に国別でみてみましょう。国は11か国あるのでfacet_wrap関数を使いましょう。

f:id:cross_hyou:20181206130100j:plain

f:id:cross_hyou:20181206130114j:plain



今回は以上です。

 次回は

 

www.crosshyou.info

 

です。