SSブログ

【時系列】広告効果をモデリングする 〜その2 簡単な線形回帰モデル〜 [時系列解析 / 需要予測]

シンプルに線形回帰モデルとして、
y(Sales) = b0 + b1 * x(CM) + ε
というモデルを作ってみるとどうなるか?

model.lm <- lm(Sales ~ CM)
summary(model.lm)
 
Call:
lm(formula = Sales ~ CM)
 
Residuals:
Min 1Q Median 3Q Max
-7.9909 -2.0493 -0.1044 1.8314 7.8491
 
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 20.6109 0.4925 41.85 < 2e-16 ***
CM 8.4736 0.8371 10.12 1.07e-13 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
 
Residual standard error: 2.872 on 50 degrees of freedom
Multiple R-squared: 0.672, Adjusted R-squared: 0.6655
F-statistic: 102.5 on 1 and 50 DF, p-value: 1.068e-13
 
# 実測値と予測値を重ねる
dat_predict <- predict(model.lm)
 
ts.plot(cbind(Sales, dat_predict), type="o",
col=c("black","blue"), xlab="Week", ylab="Sales")




実測値と予測値をプロットしてみると単純な線形回帰モデルの限界が見えてきます。
目的変数(y:売上)のベースラインが少しずつ上がったり下がってりしているのですが、

線形回帰モデル
y(Sales) = b0 + b1 * x(CM) + ε

ベースライン(切片)は、どの時点でも b0 で与えられるため一定値となっています。

このベースライン(状態)を上手くモデルの中に取り入れるにはどうすれば良いかを考える必要がありそうですね。

〜過去の記事〜
【時系列】広告効果をモデリングする

その1 ABテスト(t検定)
https://skellington.blog.ss-blog.jp/2020-07-20

nice!(3)  コメント(0) 
共通テーマ:学問