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

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

都道府県別の平均気温と快晴日数と降雨日数のデータの分析 - 埼玉県が一番、快晴が多く、岡山県が一番、雨が少ない

今回は、都道府県別の平均気温と快晴日数と降雨日数のデータを分析してみようと思います。いつものように、政府統計の総合窓口(e-Stat)からデータを取得しました。

f:id:cross_hyou:20190613190811j:plain

こんな感じのデータをダウンロードしました。

これをR言語に読込ませて、分析します。まずは、read.csv関数です。

f:id:cross_hyou:20190613191621j:plain

サマリー関数でそれぞれの変数のサマリーを表示しました。OnodとAmeでNAが一つ、HareでNAが15個あります。これらの行をna.omit関数で削除します。

f:id:cross_hyou:20190613191919j:plain

2006行もあります。。1975年度からデータあるようですね。

年度ごとの平均値を出してみましょう。tapply関数です。

f:id:cross_hyou:20190613192241j:plain

だいたい、15℃前後でしょうか。ベクトルにしておきましょう。

f:id:cross_hyou:20190613192545j:plain

おんなじように、快晴日数と降雨日数も年度ごとの平均値をベクトル化しましょう。

f:id:cross_hyou:20190613192918j:plain

まずは、平均気温の推移をplot関数でみてみます。

f:id:cross_hyou:20190613193111j:plain

f:id:cross_hyou:20190613193121j:plain

年々、平均気温が上がっています。地球温暖化の影響なのでしょうか?

快晴日数はどうでしょうか?

f:id:cross_hyou:20190613193303j:plain

f:id:cross_hyou:20190613193316j:plain

快晴日数は年々減少しています。降水日数はどうかな?

f:id:cross_hyou:20190613193512j:plain

f:id:cross_hyou:20190613193522j:plain

降水日数は時系列的なトレンドはなさそうですね。

tapply関数を使って、都道府県ごとの平均気温、快晴日数、降水日数の平均値を算出しましょう。

f:id:cross_hyou:20190613194057j:plain

平均気温の順に並べてみます。sort関数です。

f:id:cross_hyou:20190613194223j:plain

北海道の平均気温は8.9℃、沖縄の平均気温は23℃です。

快晴日数も同じようにします。

f:id:cross_hyou:20190613194420j:plain

沖縄は平均して、9日しか快晴がありませんでした。埼玉は62日もありました。

降水日数はどうでしょうか?

f:id:cross_hyou:20190613194619j:plain

岡山が89日で一番少なく、石川が177日で一番多いです。

年度ごとの各平均値と都道府県ごとの平均気温の小数点以下の桁数をすっきりしましょう。

f:id:cross_hyou:20190613195121j:plain

こんな感じですね。

今回は、それぞれのデータのヒストグラムを見てみましょう。

hist関数です。まずは、平均気温から。

f:id:cross_hyou:20190613195619j:plain

年毎の平均気温のほうが、都道府県ごとの平均気温よりもバラツキは小さいですね。

次は快晴日数です。

f:id:cross_hyou:20190613195916j:plain

f:id:cross_hyou:20190613195927j:plain

こんな感じです。これはどっちがバラツキあるのかな?

変動係数を計算してみましょう。

f:id:cross_hyou:20190613200208j:plain

都道府県別のほうがバラツキありますね。

降水日数のヒストグラムです。

f:id:cross_hyou:20190613200439j:plain

f:id:cross_hyou:20190613200450j:plain

これは、都道府県別のほうがバラツキ大きいですね。

 

平均気温を被説明変数、説明変数を快晴日数と降水日数にして回帰分析をしてみましょう。lm関数ですね。

まずは、年度別のデータでやってみます。

f:id:cross_hyou:20190613200852j:plain

p-value = 0.004778なので有意なモデルです。が、各変数のp値は低くないですね。

YHAre:YAmeを削除してみます。

f:id:cross_hyou:20190613201102j:plain

p-value = 0.007077で有意です。切片とYHareの係数のp値が有意になりました。anova関数で、modelYとmodelY2を比較します。

f:id:cross_hyou:20190613201305j:plain

p値が0.07905なのでmodelYとmodelY2では大きな違いが無いです。よってmodelY2を採用します。modelY2からYAmeを削除したmodelY3を考えます。

f:id:cross_hyou:20190613201549j:plain

p-value = 0.002958なので有意です。anova関数でmodelY2とmodelY3を比較します。

f:id:cross_hyou:20190613201734j:plain

p値は0.28と有意ではない、つまりmodelY2とmodelY3では有意な違いは無い、ということですね。なので、単純なmodelY3を採用します。

summary画面を見ると、切片が16.13ですから、快晴の日がゼロだと平均気温は、16.13℃で、YHareの係数は、-0.03178とありますので、快晴の日が一日増えると気温は0.03℃下がるということです。

plot関数とabline関数で気温と快晴日数をグラフにしましょう。

f:id:cross_hyou:20190613204040j:plain

f:id:cross_hyou:20190613204055j:plain

今度は、都道府県別のデータでやってみましょう。

f:id:cross_hyou:20190613202145j:plain

p-value = 0.01207なので有意です。PHare:PAmeを削除したモデルを調べましょう。

f:id:cross_hyou:20190613202336j:plain

p-value = 0.01998で有意です。anova関数でmodelPとmodelP2に有意な違いがあるか調べます。

f:id:cross_hyou:20190613202512j:plain

p値は0.0768と有意な違いは無いので単純なmodelP2を採用します。さらに、PHareを除いたモデル、modelP3を調べましょう。

f:id:cross_hyou:20190613202734j:plain

p-value = 0.01194なので有意です。anova関数でmodelP2とmodelP3に違いがあるか調べましょう。

f:id:cross_hyou:20190613202917j:plain

p値が0.2116と有意な違いが無いことがわかりましたので、より単純なmodelP3を採用します。

切片の係数は、19.06なので、降水日数がゼロだと、都道府県の平均気温は19.06℃です。PAmeの係数が-0.03334なので、降水日数が1日増えるごとに平均気温が0.0334℃下がっていくということです。

これもplot関数とabline関数でグラフにしましょう。

f:id:cross_hyou:20190613204349j:plain

f:id:cross_hyou:20190613204359j:plain

今回は以上です。