Slide 23
Slide 23 text
# データの散布図
plot(mydata$z1, mydata$yy, xlab=“compliance”, ylab=“decrease in cholesterol level”)
set.seed(314159) # 乱数の種を固定する
B <- 100 # ブートストラップ反復回数
n <- length(cholost$z) # 標本の大きさ
r60 <- numeric(B) # ブートストラップ回帰平均値
r100 <- numeric(B) # ブートストラップ回帰平均値
for (b in 1:100){ # ブートストラップ反復開始
bt <- sample(1:n, replace=TRUE) # ブートストラップ標本番号
mydata <- cholost[bt,] # ブートストラップ標本
zz <- sort(mydata$z) # zの値の並べ替え
yy <- mydata$y[order(mydata$z)] # zの大きさの順にyを並べ替える
mydata <- data.frame(z1=zz, z2=zz^2, z3=zz^3, yy) # データフレームを作る
cubic <- lm(yy~., data=mydata) # 最小2乗法による3次関数のあてはめ
lines(zz, predict(cubic)) # 求めた最小2乗曲線を描く
# z=60, 100 のときのブートストラップ回帰予測値
dumy <- predict(cubic, data.frame(z1=c(60, 100),
z2=c(60, 100)^2, z3=c(60, 100)^3))
r60[b] <- dumy[1]
r100[b] <- dumy[2]
}
DPNQMJBODF
EFDSFBTFJODIPMFTUFSPMMFWFM