R言語を使いWeb教材「アイスクリーム屋さんで学ぶ楽しい統計学」1の「単回帰」について進めていきます(第4回)。

お客の数は、その日の最高気温と相関が強いので、最高気温が予測できればそれにしたがってお客の数も予測できることになる。
去年の夏(土日は除いた平日)のデータがを用いて散布図を描いてみる。
> 最高気温<-c(33,33,34,34,35,35,34,32,28,35,33,28,32,25,28,30,29,32,34.35)
> 客数<-c(382,324,338,317,341,360,339,329,218,402,342,205,368,196,304,294,275,336,384.368)
> plot(最高気温,客数)
回帰直線を求める
  • 傾きを求める
> 傾き<-cor(最高気温,客数)*sd(客数)/sd(最高気温)
> 傾き
[1] 17.334
  • y切片を求める
> y切片<-mean(客数)-(傾き*mean(最高気温))
> y切片
[1] -232.7071
いつものようにR関数で一発で分析することも可能である。なお、 Interceptは切片を示す。
> 単回帰結果<-lm(客数~最高気温)
> coef(単回帰結果)
(Intercept) 最高気温
-232.7071 17.3340
散布図に回帰直線を描き入れる。
> plot(最高気温,客数)
> abline(単回帰結果)
(応用編)回帰直線で予測する
1章4節の、店舗別の平均客数データ(12店舗)を用いて駅からの距離で客数を予測する。
> 駅からの距離<-c(10,1200,500,50,740,30,10,360,150,930,620,65)
> 平均客数<-c(795,213,465,694,403,782,769,561,692,361,385,723)
> 単回帰結果<-lm(平均客数~駅からの距離)
> coef(単回帰結果)
(Intercept) 駅からの距離
755.3495972 -0.4761404

> plot(平均客数~駅からの距離)
> abline(単回帰結果)

  1. web教材「アイスクリーム屋さんで学ぶ楽しい統計学」第4章 単回帰 http://kogolab.chillout.jp/elearn/icecream/chap4/sec0.html