crosshyou

主にクロス表(分割表)分析をしようかなと思いはじめましたが、あまりクロス表の分析はできず。R言語の練習ブログになっています。

人口の推移と株価の関係の分析2 - 神奈川県は男性比率が高く、長崎県は低い。東京都は外国人比が高く、徳島県は低い

 

www.crosshyou.info

 の続きです。

今回は各都道府県の男女比率、日本人比率を見てみようと思います。

まず、前回作成したワーキングデータ(wd)のサマリーを確認します。

summary関数です。

f:id:cross_hyou:20190504153540j:plain

今回は、男女比率(M/F)と日本人比率(J/T)を計算して、大きい順、小さい順に表示しようと思います。

f:id:cross_hyou:20190504154203j:plain

MFが男女比率ですが、最低が0.8740で最高が1.0567です。男性がかなり少ない都道府県がありますね。JTは日本人比率です。最低が0.9581で最大が1.0000です。外国人がほとんどいない都道府県があります。

order関数を使って並び替えてみます。

f:id:cross_hyou:20190504154554j:plain

2008年の長崎県が0.8740260で最低の男女比率です。女性100人に対して男性87人です。長崎と鹿児島県ですね。

rev関数をorder関数に使って大きい順に並び替えてみます。

f:id:cross_hyou:20190504154848j:plain

上位10は全部神奈川県ですね。1975年の神奈川県が一番男女比率が高く、1.056737です。女性100人に対して、男性が106人ですね。

日本人比率の小さい順に表示します。

f:id:cross_hyou:20190504155148j:plain

2015年の東京都が一番日本人比率が低いです。0.9580618です。約4%は外国人ということですね。東京都、大阪府、愛知県、千葉県、京都府があります。

日本人比率の大きい順に表示します。

f:id:cross_hyou:20190504155525j:plain

徳島県が1.000000で日本人比率最高です。ほとんど外国人はいないということですね。

全国だけのデータにして、男女比率、日本人比率の推移を見てみましょう。

f:id:cross_hyou:20190504155939j:plain

まず、subset関数で全国だけのデータにします。これで、plot関数でグラフを描きます。

f:id:cross_hyou:20190504160134j:plain

f:id:cross_hyou:20190504160144j:plain

男性比率は2010年ぐらいは低下してきて、その後は横ばいという動きです。

f:id:cross_hyou:20190504160436j:plain

f:id:cross_hyou:20190504160453j:plain

日本人比率も低下してきていますね。2015年、2010年、2005年、2000年と五年ごとに比率の低い年が現れます。なんでかな?

最後のrm関数で分析用データ(ad)を消去して、今回は終わります。

f:id:cross_hyou:20190504161042j:plain

 次回は

 

www.crosshyou.info

 

です。

今回のR言語のコードです。


# ワーキングデータ(wd)のサマリー
summary(wd)

# 分析用データ(ad)の作成
ad <- wd # wdのデータをadにコピー
ad$MF <- ad$M / ad$F # M(男性人口) / F(女性人口)
ad$JT <- ad$J / ad$T # J(日本人人口) / T(総人口)
ad <- subset(ad, select = c(Year1, Pref2, MF, JT)) # 必要な変数だけを選択
summary(ad)

# MFの小さい順
head(ad[order(ad$MF), ], 10)

# MFの大きい順
head(ad[rev(order(ad$MF)), ], 10)

# JTの小さい順
head(ad[order(ad$JT), ], 10)

# JTの大きい順
head(ad[rev(order(ad$JT)), ], 10)

# adを全国だけにする。
ad <- subset(ad, subset = (Pref2 == "全国"))
summary(ad)

# MFの推移
plot(ad$Year1, ad$MF, type = "b")

# JTの推移
plot(ad$Year1, ad$JT, type = "b")

# 分析用データ(ad)の消去
rm(ad)