差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| mva:regression [2022/05/13 08:20] – watalu | mva:regression [2022/05/13 12:14] (現在) – watalu | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| + | === 授業前に掲示した版 === | ||
| + | |||
| ビールのデータを楽しむ。 | ビールのデータを楽しむ。 | ||
| 行 183: | 行 185: | ||
| summary(beer.4.lm) | summary(beer.4.lm) | ||
| plot(beer.4.lm) | plot(beer.4.lm) | ||
| + | </ | ||
| + | |||
| + | これをレポートにまとめてみてください。 | ||
| + | |||
| + | === 授業中に修正した版 === | ||
| + | < | ||
| + | # データを読み込む | ||
| + | |||
| + | beer.1 = read.csv(file(" | ||
| + | | ||
| + | plot(beer.1$東京, | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | # データを眺める | ||
| + | plot(beer.1$東京) | ||
| + | beer.1$月数 = c(1:76) | ||
| + | plot(beer.1$月数, | ||
| + | plot(beer.1$月数, | ||
| + | plot(beer.1$月数, | ||
| + | plot(beer.1$月数, | ||
| + | plot(beer.1$月数, | ||
| + | plot(beer.1$月数, | ||
| + | |||
| + | plot(beer.1$ビール) | ||
| + | plot(beer.1$月数, | ||
| + | plot(beer.1$月数, | ||
| + | plot(beer.1$月数, | ||
| + | |||
| + | hist(beer.1$東京) | ||
| + | hist(beer.1$東京, | ||
| + | hist(beer.1$東京, | ||
| + | hist(beer.1$東京, | ||
| + | hist(beer.1$東京, | ||
| + | |||
| + | hist(beer.1$ビール) | ||
| + | hist(beer.1$ビール, | ||
| + | hist(beer.1$ビール, | ||
| + | hist(beer.1$ビール, | ||
| + | |||
| + | boxplot(beer.1$ビール) | ||
| + | boxplot(beer.1$東京) | ||
| + | |||
| + | # データを眺める | ||
| + | plot(beer.1$東京, | ||
| + | plot(beer.1$東京, | ||
| + | plot(beer.1$東京, | ||
| + | | ||
| + | | ||
| + | plot(beer.1$東京, | ||
| + | | ||
| + | | ||
| + | | ||
| + | plot(beer.1$東京, | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | # 左上、なんかおかしい | ||
| + | |||
| + | # 月という変数を作ってみる | ||
| + | beer.1$月 = c(rep(c(1: | ||
| + | beer.1$月 = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, | ||
| + | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, | ||
| + | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, | ||
| + | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, | ||
| + | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, | ||
| + | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, | ||
| + | 1, 2, 3, 4) | ||
| + | |||
| + | plot(beer.1$月, | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | # 先ほどの左上の点が・・・ | ||
| + | # でも今回は、この方向にモデルを頑張る話ではない | ||
| + | # 気温で売り上げを説明しようとすると、これは説明できない | ||
| + | |||
| + | # 元の話(回帰分析)に立ち返る | ||
| + | |||
| + | # 関数を当てはめる | ||
| + | plot(beer.1$東京, | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | lm(ビール~東京, | ||
| + | summary(lm(ビール~東京, | ||
| + | lines(c(0, | ||
| + | lm(ビール~tan((((東京-4.4)/ | ||
| + | lines(c(5: | ||
| + | col=" | ||
| + | lm(ビール~sinh((((東京-4.4)/ | ||
| + | lines(c(5: | ||
| + | col=" | ||
| + | legend(" | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | install.packages(" | ||
| + | library(" | ||
| + | gam(ビール~東京, | ||
| + | plot(gam(ビール~東京, | ||
| + | summary(gam(ビール~東京, | ||
| + | gam(ビール~s(東京), | ||
| + | plot(gam(ビール~s(東京), | ||
| + | beer.1.gam = gam(ビール~s(東京), | ||
| + | plot(beer.1$東京, | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | points(beer.1$東京, | ||
| + | legend(" | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | # 2乗と3乗の項を加えたい | ||
| + | lm(ビール~東京+東京*東京+東京*東京*東京, | ||
| + | lm(ビール~東京, | ||
| + | # 失敗 | ||
| + | # Rのモデル式の掛け算記号*は、掛け算の意味ではない | ||
| + | |||
| + | # 2乗と3乗の変数を作る | ||
| + | beer.1$東京2 = (beer.1$東京)^2 | ||
| + | beer.1$東京3 = (beer.1$東京)^3 | ||
| + | lm(ビール~東京+東京2+東京3, | ||
| + | lines(c(0: | ||
| + | col=" | ||
| + | # これがけっこうよさそう | ||
| + | legend(" | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | |||
| + | # 何をしたかったんだっけ? | ||
| + | # 回帰分析 | ||
| + | # 誤差を忘れてる | ||
| + | # 誤差が正規分布に従うモデル | ||
| + | # 誤差の代わりに残差を調べる | ||
| + | |||
| + | beer.1.lm3 = lm(ビール~東京+東京2+東京3, | ||
| + | plot(beer.1.lm3) | ||
| + | plot(beer.1$ビール, | ||
| + | plot(beer.1$ビール, | ||
| + | | ||
| + | plot(fitted(beer.1.lm3), | ||
| + | | ||
| + | # 当てはめ値+残差=実測値 | ||
| + | # 上の方に外れ値が残ってる | ||
| + | |||
| + | # 実は・・・ | ||
| + | |||
| + | library(vars) | ||
| + | install.packages(" | ||
| + | library(vars) | ||
| + | VAR(cbind(beer.1$ビール, | ||
| + | VAR(cbind(beer.1$ビール, | ||
| + | beer.1.var = VAR(cbind(beer.1$ビール, | ||
| + | p=2, type=" | ||
| + | coef(beer.1.var) | ||
| + | plot(beer.1.var) | ||
| + | beer.1.var = VAR(cbind(beer.1$ビール, | ||
| + | p=2, type=" | ||
| + | | ||
| + | plot(beer.1.var) | ||
| + | |||
| + | |||
| + | beer.2 = read.csv(file(" | ||
| + | | ||
| + | beer.2.lm = lm(ビール~東京+京都, | ||
| + | summary(beer.2.lm) | ||
| + | plot(beer.2.lm) | ||
| + | beer.1.lm = lm(ビール~東京, | ||
| + | summary(beer.1.lm) | ||
| + | # よくなってなかった | ||
| + | |||
| + | # もう12月だけダミー変数を入れて調整してしまう | ||
| + | beer.3 = read.csv(file(" | ||
| + | | ||
| + | beer.3 | ||
| + | names(beer.3) | ||
| + | beer.3.lm = lm(ビール~東京+X12月, | ||
| + | summary(beer.3.lm) | ||
| + | plot(beer.3.lm) | ||
| + | # よくなった | ||
| + | |||
| + | 12月だけ異常なことを考慮したモデル | ||
| + | |||
| + | plot(beer.1$東京, | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | points(beer.3$東京, | ||
| + | |||
| + | |||
| + | # 最後、月ダミー | ||
| + | beer.4 = read.csv(file(" | ||
| + | | ||
| + | beer.4.lm = lm(ビール~東京+京都+東京1月後+時間+X1月+X2月+X3月+X4月+X5月+X6月+X7月+X8月+X9月+X10月+X11月+X12月+時間, | ||
| + | summary(beer.4.lm) | ||
| + | points(beer.4$東京, | ||
| </ | </ | ||