データのお砂場(15) R言語、JohnsonJohnson、四半期毎一株あたり利益

Joseph Halfmoon

今回のデータは60年くらい前から40年くらい前のJ&J社の一株利益のデータです。60年前これ知っていたら大儲け(できる筈ないですが。)まさに儲かっていますなJ&J。が、しかし、このデータセットサンプル処理の意義は、その儲かっているトレンドから、結構大きな4半期毎の変動を分離せよ、ということみたいです。

※「データのお砂場」投稿順Indexはこちら

R言語に「漏れなくついてくる」であろうサンプルデータセットをABC順に端から舐めてみています。もとより統計には素人、R言語も素人。サンプルデータセットの見せてくれる「知らない世界」を例題実行しながら眺めております。

データセットの解説ページ

データセットの解説ページへのリンクは以下です。

Quarterly Earnings per Johnson & Johnson Share

データセットそのものは、単純な時系列データです。4半期(3か月毎に)1株あたり、何ドル儲かったか、というデータです。特に会計年度みたいな注釈もないので、カレンダ・イヤーということで良いですかね。

さて生データを見てみる

生データの先頭をhead()で見てみましたが、なんということもありません。しかし、plot()コマンドに時系列全体を与えてみて、愕然といたしましたよ(グラフはアイキャッチ画像に)

RawDataOpr

どんだけ伸びている?という感じです。儲けがまさに鰻登り。今でもJ&J社は優良企業だと思いますが、その源はこの時代にあった?のですかね。

しかし、生データのグラフを見ると分かりますが、結構クォーター毎の利益の変動が大きそうです。特に後半の金額の大きいあたりはかなり明瞭。これは4半期毎の「毎年の」変動部分と、全体トレンドを分離したい(そして全体トレンドを見て投資するってことかい?)

突然常用対数登場

私なんぞは先ほどのグラフみて、儲かってるな~、きっと株価も鰻登り、などと思ってそれキリです。しかし「例題」では突然、常用対数を取るのです。

こんな感じ。Log10Opr

トートツな常用対数登場ですが、以下のプロット結果を見ると、ちょっと意図が分かる気もします。「トレンド」が直線的になっているように見えます。元のグラフをみれば、なんとなく「指数関数」的なトレンドに見えるからですかね(それにしても、指数関数的利益拡大とは恐ろしい。。。)

Log10Graph

そしてさらに登場するのが時系列の「構造モデル」なるもの。マニュアルページは以下に。

StructTS

サッパリです。サッパリ分かりませんが、以下の処理を行うことで知りたいことが見えてくるのだこれが。

smPlotOpr

黒の線が元の(常用対数とった)利益のグラフです。緑の線が「トレンド」にあたる部分みたいです。そして下の青の線が4半期(季節)変動的な。

smPlot

縦軸の値-0.5のところにスパッとグレイの横線引いてますが、この0.5という数字がどこから来たのかは不明。

この「StructTS解析? typeはBSM」については、tsdiag()関数で検証しているみたい?なんだか分かります?私には意味分からない。ダメダメ。

tsdiag

そして解析結果に対して、monthplot()関数を適用するとこんな感じ。

monthPlotOpr

4半期毎の季節変動があぶりだされている感じがします。それにしても sea って何。

monthPlot

一方、例題には無い、元の生データのままの monthplotも描いてみました。こんな感じ。微妙に季節変動が見えるような気がするものの、圧倒的な利益の伸びのトレンドに隠れて、これはこれでなんだか分からない。

RawDataMonthPlot

なんだか分からないけれども、時系列データの変動要因を分離するための手法があることは分かりました。随分、大雑把な「まとめ」だな。

データのお砂場(14) R言語、InsectSprays、殺虫剤の効きの分散分析とな? へ戻る

データのお砂場(16) R言語、LakeHuron、ヒューロン湖の水位とな? へ進む