## Settings for RMarkdown http://yihui.name/knitr/options#chunk_options
opts_chunk$set(comment = "", warning = FALSE, message = FALSE, tidy = FALSE,
echo = TRUE, fig.width = 7, fig.height = 7)
options(width = 116, scipen = 10)
setwd("~/statistics/bio201/")
References
## 4.5
permutation.data <- seq(from = 50, to = 46, by = -1)
permutation.data
[1] 50 49 48 47 46
prod(permutation.data)
[1] 254251200
factorial(50) / factorial(45)
[1] 254251200
## 4.6
prod(permutation.data) / factorial(5)
[1] 2118760
factorial(50) / (factorial(45) * factorial(5))
[1] 2118760
binom.test(x = 10, n = 10000, p = 50 / 100000)
Exact binomial test
data: 10 and 10000
number of successes = 10, number of trials = 10000, p-value = 0.03852
alternative hypothesis: true probability of success is not equal to 0.0005
95 percent confidence interval:
0.0004796 0.0018383
sample estimates:
probability of success
0.001
poisson.test(x = 10, T = 10000, r = 50 / 100000)
Exact Poisson test
data: 10 time base: 10000
number of events = 10, time base = 10000, p-value = 0.03857
alternative hypothesis: true event rate is not equal to 0.0005
95 percent confidence interval:
0.0004795 0.0018390
sample estimates:
event rate
0.001
## 4.46
barplot(dbinom(x = 0:20, size = 20, prob = 0.05), names.arg = 0:20)
sum(dbinom(x = 3:20, size = 20, prob = 0.05))
[1] 0.07548
## 4.47
barplot(dbinom(x = 0:18, size = 18, prob = 0.1), names.arg = 0:18)
sum(dbinom(x = 0:2, size = 18, prob = 0.1))
[1] 0.7338
## 4.48
dbinom(x = 0, size = 20, prob = 0.05) * dbinom(x = 0, size = 20, prob = 0.10)
[1] 0.04358
0.95^20 * 0.90^20
[1] 0.04358
## 4.49
dbinom(x = 1, size = 20, prob = 0.05) * dbinom(x = 0, size = 19, prob = 0.10) +
dbinom(x = 0, size = 20, prob = 0.05) * dbinom(x = 1, size = 20, prob = 0.10)
[1] 0.1478
## 4.50
dbinom(x = 2, size = 20, prob = 0.05) * dbinom(x = 0, size = 18, prob = 0.10) +
dbinom(x = 0, size = 20, prob = 0.05) * dbinom(x = 2, size = 20, prob = 0.10) +
dbinom(x = 1, size = 20, prob = 0.05) * dbinom(x = 1, size = 19, prob = 0.10)
[1] 0.2382
func.4.50 <- function(x) dbinom(x = x, size = 20, prob = 0.05) * dbinom(x = 2 - x, size = 20 - x, prob = 0.10)
sum(func.4.50(0:2))
[1] 0.2382
## 4.58
dbinom(x = 3, size = 5, prob = 0.4)
[1] 0.2304
## 4.59
sum(dbinom(x = 3:5, size = 5, prob = 0.4))
[1] 0.3174
## 4.60
dbinom(x = 0, size = 10, prob = 0.40) * dbinom(x = 3, size = 10, prob = 0.55) +
dbinom(x = 1, size = 10, prob = 0.40) * dbinom(x = 2, size = 10, prob = 0.55) +
dbinom(x = 2, size = 10, prob = 0.40) * dbinom(x = 1, size = 10, prob = 0.55) +
dbinom(x = 3, size = 10, prob = 0.40) * dbinom(x = 0, size = 10, prob = 0.55)
[1] 0.00195
func.4.60 <- function(x) dbinom(x = x, size = 10, prob = 0.40) * dbinom(x = 3 - x, size = 10, prob = 0.55)
sum(func.4.60(0:3))
[1] 0.00195
## 4.71 X = 5 from below
data.frame(x = 0:10, proportion.covered = cumsum(dpois(x = 0:10, lambda = 2)))
x proportion.covered
1 0 0.1353
2 1 0.4060
3 2 0.6767
4 3 0.8571
5 4 0.9473
6 5 0.9834
7 6 0.9955
8 7 0.9989
9 8 0.9998
10 9 1.0000
11 10 1.0000
## 4.72 X = 8 from below
data.frame(x = 0:10, proportion.covered = cumsum(dpois(x = 0:10, lambda = 4)))
x proportion.covered
1 0 0.01832
2 1 0.09158
3 2 0.23810
4 3 0.43347
5 4 0.62884
6 5 0.78513
7 6 0.88933
8 7 0.94887
9 8 0.97864
10 9 0.99187
11 10 0.99716
## 4.73
345 / 365 * dpois(x = 4, lambda = 2) + 20 / 365 * dpois(x = 4, lambda = 4)
[1] 0.09598
## 4.74 X = 5 from below
func.4.74 <- function(x) 345 / 365 * dpois(x = x, lambda = 2) + 20 / 365 * dpois(x = x, lambda = 4)
data.frame(x = 0:10, proportion.covered = cumsum(func.4.74(0:10)))
x proportion.covered
1 0 0.1289
2 1 0.3888
3 2 0.6526
4 3 0.8339
5 4 0.9299
6 5 0.9726
7 6 0.9897
8 7 0.9962
9 8 0.9986
10 9 0.9995
11 10 0.9998