今回は趣向を変えて、上場している外食企業の財務データを分析してみました。吉野家とかココイチとかすかいらーくとかですね。
日本取引所のホームページから上場企業の財務データがわかるので、それを使いました。
こんな感じのデータです。これの通期決算のデータをExcelに手入力して、こんな感じにまとめました。
Tickerは東証の4桁コードです。9861は吉野家HD、9887は松屋フーズ、7550はゼンショーHDです。
Yearは決算年、Salesは売上高、OPは営業利益、CPは経常利益、NIは純利益です。
www.fb-soken.comのページに乗っている企業の中から、私が行ったことのある企業を調べてExcelファイルにデータを打ち込みました。
R言語のread.csv関数で読み込みます。
100の観測と6つの変数のデータフレームです。Tickerのデータ型がintで整数型になっているので、as.factor関数でファクタ型に変換しましょう。
summary関数でサマリーを表示すると、平均値、中央値などではなく、各値の度数が表示されました。ファクタ型になっていることがわかります。何社のデータがあるのかな?length関数でみてみます。
37社あることがわかります。
Sales、売上高が一番大きい企業はどこでしょうか?
order関数とrev関数とhead関数を使います。
Tickerが7550の会社、ゼンショーHDが6076億7900万円で一番です。次は、3197のすかいらーくHDでその次が2702の日本マクドナルドHDです。
OP、営業利益の大きい会社はどこでしょうか?
3197のすかいらーくHDが2017年に281億0300万円でいちばんです。次が2702の日本マクドナルドHDで250億4500万円です。3番はゼンショーHD(7550)です。この3社が外食業界のビッグ3ですかね?
経常利益、CPも同じかな?
経常利益は2702の日本マクドナルドHDが256億4400万円で一番です。次が3197のすかいらーくHDで3番目が7550のゼンショーHDです。やっぱりこの3社ですね。
NI,純利益も同じでしょうか?
NI(純利益)も2702の日本マクドナルドHDが240億2400万円でいちばんです。2番が3197のすかいらーくHD、3番が7550のゼンショーHDです。
営業利益率(営業利益 / 売上高)を計算してみましょう。
新しいデータフレームを作成しました。OPMの大きい順に並び替えてみます。
3085は、アークランドサービスHDです。これが14.17%で一番です。次は7611、これはハイデイ日高、3395、これはサンマルクHDです。これが3番です。アークランドサービスはとんかつの「かつや」、からあげの「からやま」肉めしの「岡むら屋」を展開している会社です。
売上高とOPMの散布図を描いてみます。plot関数です。
Salesの対数をとって散布図を描いてみます。
OPMとSalesに関係があるのか無いのか。。。
OPMという連続数値をSalesという連続数値とYearというファクター変数で説明するモデルを作りましょう。ANCOVA分析ですね!
Yearをas.factor関数でファクタにします。
まず、OPMとlog10(Sales)の散布図をYearで色分けして描いてみます。
lm関数でANCOVA分析です。
一番下の行のp-valueを見ると、0.004933と0.05よりも小さい値なのでこのモデルは有意なモデルです。各変数のp値を見ると、Year2018とYear2019は0.05よりも大きいのでYearはいらないかもしれないですね。Yearなしのモデルを作って、Yearありのモデルをanova関数で比較します。
p値は0.4395なので、Year無しのモデルでも変わりは無いということです。summary関数で確認します。
p値は0.00125です。切片と、log10(Sales), I(log10(Sales)^2)の2つの係数のp値は0.05以下です。Salesの2乗項の係数の符号はマイナスですので、Salesはある程度大きくなると、OPMにはマイナスに作用してしまう、ということですね。
でも、このモデルのAdjusted R-squaredは0.1108ですから、OPMを11%しか説明していません。
CP-OPを計算して、この変数をモデルに加えてみます。CP-OPは経常利益 - 営業利益です。これがプラスならば金融収支はプラスということです。金融収支がプラスということは財性的に余裕がある、ということは仕入れなども余裕をもってできる、ということは営業利益率は上がる、という理屈です。
p値が0.1673と0.05よりも大きいのでCOを加えても意味はなかったです。
一応、summary関数で確認しておきましょう。
COの係数のp値は0.16726と0.05よりも大きいですね。
今回は以上です。