www.crosshyou.info

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

都道府県別の商店主の数の分析 - 商店主がこ1980年度から2015年度で136万6540人の商店主が減少した。

今日は都道府県別の商店主の数を分析しようと思います。

政府統計の総合窓口、e-Statからデータを取得しました。

f:id:cross_hyou:20190713121726j:plain

地域は47都道府県です。

f:id:cross_hyou:20190713121748j:plain

項目は総人口(人)、総面積(ha)、商店主(人)です。

これをCSVファイルにします。

f:id:cross_hyou:20190713121844j:plain

こんな感じです。

このCSVファイルをR言語のread.csv関数で読込み、分析してみます。

f:id:cross_hyou:20190713121933j:plain

read.csv関数でCSVファイルを読込み、na.omit関数でNAの行を削除しました。str関数でデータ構造を確認しています。376の観測、5の変数です。Year(年度)とPref(都道府県)はファクターで、Pop(総人口)、Area(面積)、Tenshu(商店主)は整数型です。

f:id:cross_hyou:20190713122455j:plain

as.character関数でYearを文字列型に戻し、それをas.factor関数でファクター型に変換しました。これで、度数が0の年度がファクターの水準からなくなります。

table関数でYearの度数を数えました。1980年から2015年まで5年ごとにあります。すべて47度数あるので、都道府県の欠損は無いです。

f:id:cross_hyou:20190713122854j:plain

tapply関数で、年毎の商店主の合計値を計算しました。1980年度は182万1140人だったのが、2015年度には45万4600人と4分の1になっています。

f:id:cross_hyou:20190713123635j:plain

人口1万人あたりの商店主数、面積1万haあたりの商店主数を算出しました。そのあとでsummary関数で基本統計値をだしています。

平均で人口1万人当り100人の商店主が、面積1万ha当り588人の商店主がいる計算です。ただ、この値は1980年度のように商店主が多くいた時期も併せての平均ですので、2015年度だけだともっと少なくなるでしょうね。

f:id:cross_hyou:20190713124508j:plain

tapply関数とmean関数で年毎の人口1万人当り、面積1万ha当りの商店主数の平均を算出しています。1980年度は人口1万人当り160人、面積1万ha当り940人の商店主がいましたが、2015年度は人口1万人当り42人、面積1万ha当り221人になっています。35年間で4分の1ですね。

f:id:cross_hyou:20190713125304j:plain

2015年度だけのデータフレームを作成しました。df1$Year == "2015年度"として2015年度だけを選択しています。

f:id:cross_hyou:20190713125848j:plain

order関数、rev関数を使って、並びかえました。

人口1万人当りの商店主の少ない県は、神奈川県、千葉県、埼玉県、東京都、愛知県、北海道です。

その反対に多いのは、高知県、和歌山県、島根県、宮崎県、長崎県、徳島県です。

f:id:cross_hyou:20190713130454j:plain

面積1万ha当りの商店主が少ない都道府県は、北海道、岩手県、秋田県、島根県、福島県、山形県です。

多いのは、大阪府、東京都、神奈川県、埼玉県、愛知県、福岡県です。

f:id:cross_hyou:20190713130901j:plain

df2015$Popなどと、いちいちデータフレームを指定するのが面倒なので、人口、面積、商店主のデータをそれぞれ独立したベクトルにしました。

f:id:cross_hyou:20190713131350j:plain

f:id:cross_hyou:20190713131411j:plain

plot関数で散布図を描きました。

商店主の数を被説明変数、人口と面積を説明変数にして回帰分析をしてみます。

f:id:cross_hyou:20190713131921j:plain

モデルのp値は2.2e-16より小さいので有意です。P2015だけが係数としては有意ですね。I(log(A2015))をはずしたモデルをチェックしましょう。

f:id:cross_hyou:20190713132311j:plain

Pr(>F)が0.8824なので、modelとmodel1は有意な差は無いです。なので、説明変数が少ないmodel1のほうがいいです。

さらに、P2015:A2015の交差項をはずしたmodel2をチェックしましょう。

f:id:cross_hyou:20190713132650j:plain

A2015もいらなそうです。

f:id:cross_hyou:20190713132904j:plain

I(log(P2015))もはずしてみましょう。

f:id:cross_hyou:20190713133124j:plain

商店主の数は人口でほぼ説明ができるようです。

散布図を回帰直線を描きます。

f:id:cross_hyou:20190713133406j:plain

f:id:cross_hyou:20190713133440j:plain

年毎の商店主の数もグラフにしましょう。

f:id:cross_hyou:20190713133844j:plain

f:id:cross_hyou:20190713133857j:plain

tapply関数で計算した結果をbarplot関数で棒グラフにしました。

商店主の減少度合いがよくわかりますね。

f:id:cross_hyou:20190713135730j:plain

最後にtapply関数の計算結果をデータフレーム型になおして、商店主の減少数を計算しました。136万6540人減少しました。

今回は以上です。