e-Stat(政府統計の総合窓口)のレイアウトが令和になって変更になりました。
今回は右下の「地域」をクリックしてみます。
クリックすると、上図のような画面になります。データ表示をクリックしてみます。
都道府県別の人口を選択して、データを表示します。
このようなデータですね。ダウンロードします。
こんなファイルです。10行目に私が独自の変数名を付けました。
これをread.csvファイルでR言語で読み取りましょう。
株価と人口の関係を調べたいので、株価のファイル、も読込みます。
株価のファイルは下図のようなものです。
これもread.csv関数で読込みます。6行目から読み込むので、skip = 5 としてやります。
株価のデータでは、Timeという変数が西暦を表していて、人口のデータでは、Year1が西暦を表していますが、西暦を百万倍して10万を足した数になっています。これを西暦に直します。
上図のように、うまく変換できました。
次は、merge関数を使って、wdとkabukaを合体させます。
kabukaにYear1という名前で西暦を表す変数を作ってやり、Year1をキーにしてwdとkabukaをmerge関数で統合しました。head関数で始めの数行を表示していますが、1975年がwdは複数行あり、kabukaでは1行だけですが、ちゃんとkabukaのデータがどの1975年にも入っています。
summary関数で基本統計量を表示します。
ここで、分析に必要な変数だけにしておきましょう。必要な変数は、Year1, Pref2, T, M, F, J, JM, JF, KabukaとKabuka1Yです。subset関数を使います。
これでデータの整理は終わりました。
wd, ワーキングデータは、2064の観測と10の変数があります。このうち、KabukaとKabuka1Yがresponse(被説明変数)で、残りがexplanatory(説明変数)です。
1975年から2017年までのデータで、全国と47都道府県のデータです。
Tが総人口、Mが男の総人口、Fが女の総人口、Jが日本人の総人口、JMが男の日本人人口、JFが女の日本人人口です。なので、TとJの差が外国人ということですね。KabukaはTopixの値、Kabuka1Yは1年後の騰落です。1.1だと10%上昇した、ということですね。
これらの人口のデータで株価を説明できるかどうかをこれから調べていきたいと思います。
今回は以上です。
次回は
です。
今回のR言語のコードです。
# ファイルの読込み オリジナルデータ = od
od <- read.csv("jinkou.csv", skip = 9, na.strings = c("***", "-", "X"))
str(od)
head(od)
summary(od)
# 株価データの読込み
kabuka <- read.csv("KABUKA_YEARLY.csv", skip = 5)
str(kabuka)
head(kabuka)
summary(kabuka)
# オリジナルデータのYear1を4桁の西暦に直す
wd <- od # オリジナルデータ(od)をワーキングデータ(wd)にコピー
wd$Year1 <- (wd$Year1 - 100000) / 1000000 # 4桁の西暦に変換
head(wd$Year1) # 変換できたか確認
# wdとkabukaの統合
kabuka$Year1 <- kabuka$Time # Timeと同じデータでYear1という変数をkabukaに追加
wd <- merge(wd, kabuka, by = "Year1") # Year1をキーにしてwdとkabukaを統合
str(wd)
head(wd)
summary(wd)
# 必要な変数だけにする
wd <- subset(wd, select = c(Year1, Pref2, T, M, F, J, JM, JF, Kabuka, Kabuka1Y))
str(wd)
head(wd)
summary(wd)