の続きです。
まず、ls()関数で変数として今までどんな変数を作成してきたかを確認します。
dfで始まっているのはデータフレームですね。dfからdf8まで9種類あります。
初心に帰ってdf関数がどんなものか、見てみましょう。head関数で始めの数行を表示します。
Income1が一社当たりの純利益、NetAsset1が一社当たりの純資産です。
Typeの列が規模別・業種別で何を示しているかを表しているのですが、Largeの一社当たりの純利益は945、Smallは16ぐらいと60倍ぐらいの格差があります。これでは東証一部はプレミアム感が無いから再編しよう、という意見が出るのも納得ですね。
試しにIncome1のヒストグラムを描いてみます。hist関数です。
0から250ぐらいでしょうか?そこに分布が集中していますね。
logを取ってからヒストグラムを書いてみましょう。でも、マイナスの値があるからこれを0にする処理をしてからlogを取ってヒストグラムにしてみます。
分布が右に偏っただけで、あんまり分布状況を観察しやすくはなっていないですね。
こんどはTypeをTotalだけに絞り込んで分析しましょう。subset関数を使いました。
PERの時系列の変化を見てみます。plot関数を使います。
plot(df_Total$Time, df_Total$PER)と2回、df_Totalと打ち込むのは面倒だったので、with関数を使いました。
PERは低下傾向ですね。
PBRもグラフにしてみます。
こんどは、with関数のかわりにattach関数を使ってdf_Totalをデフォルトのデータフレームに指定してからplot関数を使いました。detach(df_Total)とするまではdf_Totalがデフォルトのデータフレームになります。PBRはPERほどは低下傾向は示していないようです。
PERとIncome1の散布図を見てみましょう。
同じ色は同じ年を表しています。純利益が大きくなるとPERが低下しています。株価がほぼ変わらずに純利益だけ増えているのでPERが下がっている、ということですね。
PERとNetAsset1はどうでしょうか?
これもIncome1と同じようなグラフですね。
Income1とNetAsset1の散布図を見てみます。
強い正の相関がありますね。Income1をNetAsset1で割ったROEを計算してみます。
ROEの時系列を見てみます。
ROEは上昇トレンドです。
ROEとPERの散布図を見てみます。
ROEが高いほどPERが低いですね。
こうしてみると、PERの低下はファンダメンタル云々というより、2013年、2014年の高いPERのが低下してきて、外国のPERと同じぐらいになった、というように思われます。今回は以上です。
今回のR言語のコードです。
# 変数何があるか確認
ls()
# dfの確認
head(df)
# Income1のヒストグラム
hist(df$Income1)
# Income1の対数変換後のヒストグラム
hist(log(df$Income1 - min(df$Income1)))
# TypeがTotalだけにする
df_Total <- subset(df, subset = (Type == "Total") )
head(df_Total)
# PERの時系列の変化
with(df_Total, plot(Time, PER) )
# PBRの時系列変化
attach(df_Total)
plot(Time, PBR)
# PERとIncome1の散布図
plot(Income1, PER, pch = 21, bg=as.numeric(as.factor(Year)))
# PERとNetAsset1の散布図
plot(NetAsset1, PER, pch = 21, bg = as.numeric(as.factor(Year)))
# Income1とNetAsset1の散布図
plot(Income1, NetAsset1, pch = 21, bg = as.numeric(as.factor(Year)))
# ROEの計算
detach(df_Total)
df_Total$ROE <- df_Total$Income1 / df_Total$NetAsset1
# ROEの時系列
attach(df_Total)
plot(Time, ROE)
# ROEとPERの散布図
plot(ROE, PER, pch = 21, bg = as.numeric(as.factor(Year)))
detach(df_Total)