我们可以计算!

R 中的贝叶斯数据分析基础

Rasmus Bååth

Data Scientist

模拟 vs 计算

  • 使用"r"函数模拟,例如 rbinomrpois
  • 模拟 P(n_visitors = 13 | prob_success = 10%)
n_visitors <- rbinom(n = 100000, size = 100, prob = 0.1)
sum(n_visitors == 13) / length(n_visitors)
0.074
  • 使用"d"函数计算,例如 dbinomdpois
  • 计算 P(n_visitors = 13 | prob_success = 10%)
dbinom(13, size = 100, prob = 0.1)
0.074
R 中的贝叶斯数据分析基础
  • 计算 P(n_visitors = 13 或 n_visitors = 14 | prob_success = 10%)
dbinom(13, size = 100, prob = 0.1) + dbinom(14, size = 100, prob = 0.1)
0.126
  • 计算 P(n_visitors | prop_success = 10%)
n_visitors = seq(0, 100, by = 1)
probability <- dbinom(n_visitors, size = 100, prob = 0.1)
n_visitors
0 1 2 3 4 5 6 7 ...
probability
0.000 0.000 0.002 0.006 0.016 0.034 0.060 0.089 ...
R 中的贝叶斯数据分析基础

绘制计算得到的分布

plot(n_visitors, probability, type = "h")

R 中的贝叶斯数据分析基础

连续型分布

  • 均匀分布
x <- runif(n = 100000, min = 0.0, max = 0.2)
hist(x)

R 中的贝叶斯数据分析基础

连续型分布

  • 均匀分布
    • runif 的 d-版本是 dunif
dunif(x = 0.12, min = 0.0, max = 0.2)
5
  • 概率密度:一种相对概率
x = seq(0, 0.2, by=0.01)
dunif(x, min = 0.0, max = 0.2)
5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
R 中的贝叶斯数据分析基础

试一试!

R 中的贝叶斯数据分析基础

Preparing Video For Download...