回答問題:我該辦海灘派對嗎?

R 的 Bayesian 資料分析基礎

Rasmus Bååth

Data Scientist

問題

  • 7 月 20 日的平均水溫大約多少?
  • 下一個 20 日水溫達到 18 或以上的機率是多少?

R 的 Bayesian 資料分析基礎

後驗分佈

pars
  mu sigma probability
17.5   1.9      0.0001
18.0   1.9      0.0003
18.5   1.9      0.0014
19.0   1.9      0.0043
19.5   1.9      0.0094
20.0   1.9      0.0142
20.5   1.9      0.0151
21.0   1.9      0.0112
21.5   1.9      0.0058
22.0   1.9      0.0021
...    ...       ...
sample_indices <- sample(1:nrow(pars), size = 10000, 
                         replace = TRUE, prob = pars$probability)
R 的 Bayesian 資料分析基礎
sample_indices <- sample(1:nrow(pars), size = 10000, 
                         replace = TRUE, prob = pars$probability) 
head(sample_indices)
430  428 1010  383  343  385
pars_sample <- pars[sample_indices, c("mu", "sigma")]
head(pars_sample)
     mu sigma
1  20.0   2.8
2  19.0   2.8
3  17.5   6.7
4  19.0   2.5
5  21.5   2.2
6  20.0   2.5
7  20.0   2.8
8  20.5   1.6
9  19.0   2.5
10 17.0   4.0
R 的 Bayesian 資料分析基礎

平均溫度的機率分佈

hist(pars_sample$mu, 30)

R 的 Bayesian 資料分析基礎

平均溫度的機率分佈

quantile(pars_sample$mu, c(0.05, 0.95))
  5%  95% 
17.5 22.5 
R 的 Bayesian 資料分析基礎

20 日水溫是否達到 18?

pred_temp <- rnorm(10000, mean = , sd = )
R 的 Bayesian 資料分析基礎

20 日水溫是否達到 18?

pred_temp <- rnorm(10000, mean = pars_sample$mu, sd = pars_sample$sigma)
R 的 Bayesian 資料分析基礎

20 日水溫是否達到 18?

pred_temp <- rnorm(10000, mean = pars_sample$mu, sd = pars_sample$sigma)
hist(pred_temp, 30)

R 的 Bayesian 資料分析基礎

20 日水溫是否達到 18?

pred_temp <- rnorm(10000, mean = pars_sample$mu, sd = pars_sample$sigma)
hist(pred_temp, 30)
sum(pred_temp >= 18) / length(pred_temp )
0.73
R 的 Bayesian 資料分析基礎

R 的 Bayesian 資料分析基礎

那殭屍的 IQ 呢?

R 的 Bayesian 資料分析基礎

Preparing Video For Download...