Biến ngẫu nhiên là một thuật ngữ được dùng trong toán học và thống kê.
Trong một phép thử ngẫu nhiên (Randomness tests), đầu ra (outcome) của nó có thể là giá trị số hoặc không phải.
Ví dụ:
Ví dụ phép thử ngẫu nhiên là tung một đồng xu lên và xét mặt nào của đồng xu ở phía trên, thì kết quả đầu ra có thể là {sấp, ngửa} (đầu ra không phải là số).
Ví dụ phép thử ngẫu nhiên là tung con súc sắc và xem mặt nằm phía trên là có mấy chấm, thì kết quả đầu ra có thể là {1,2,3,4,5,6} (đầu ra là số).
Tuy nhiên, trong các ứng dụng của thống kê, người ta muốn mỗi đầu ra đều gắn với một đại lượng đo đạc được, hay còn gọi là thuộc tính có giá trị là số. Để thực hiện điều này, người ta định ra biến ngẫu nhiên để ánh xạ mỗi đầu ra của một phép thử ngẫu nhiên với một giá trị số.
-> Biến ngẫu nhiên là một hàm số ánh xạ các biến cố tới các số
Biến ngẫu nhiên rời rạc: là một biến ngẫu nhiên nhận giá trị trong một tập con rời rạc của tập số thực
Biến ngẫu nhiên liên tục: Biến ngẫu nhiên X là liên tục nếu giá trị có thể có của nó lấp đầy một khoảng trên trục số (Biến ngẫu nhiên X được gọi là liên tục nếu hàm phân bố xác suất của nó có đạo hàm)
Hàm mật độ xác suất của biến ngẫu nhiên liên tục X, ký hiệu là f(x), là hàm số không âm trong khoảng giá trị của X và diện tích tạo bởi hàm số đó và trục hoành bằng 1, thể hiện sự phân phối xác suất của X
Khi nghiên cứu các đối tượng tự nhiên, kinh tế – xã hội người ta luôn hướng đến việc nắm bắt nội dung, bản chất và sự vận động của chúng. Tuy nhiên, do có quá nhiều tác động đo được và không đo được, hầu hết các đối tượng chỉ thể hiện sự tồn tại và vận động qua các đặc trưng. Mỗi đặc trưng như vậy có thể mô tả bởi 1 biến hay một quá trình ngẫu nhiên.
Cho biến ngẫu nhiên X, mẫu ngẫu nhiên kích thước n lập từ X là tập hợp Wn(X) = (X1, X2¬, …, Xn) trong đó Xi (i = 1:n) là các biến ngẫu nhiên i.i.d (độc lập và có cùng quy luật phân phối xác suất với X).
Mẫu ngẫu nhiên 1 chiều
Mẫu ngẫu nhiên đa chiều
Trung bình của một biến ngẫu nhiên (X), thường được tính theo công thức:
\[ \bar{X} = \frac{1}{n} \sum_{i=1}^{n} X_{i}\]
\[\bar{X} = (\prod_i r_{i})^\frac{1}{n} \]
So sánh trung bình cộng với trung bình nhân wiki
Ví dụ
Giả sử một danh mục đầu tư B có tỷ suất lợi nhuận hàng năm r lần lượt là (90%, 20%, 10%, 30%, -90%)
\[r_{t} = (\frac{x_{t} - x_{t-1}}{x_{t-1})}) \]
? Tính lợi suất trung bình năm của danh mục B
r <- c(90, 20, 10, 30, -90)/100
(.9 + .2 + .1 + .3 -.9)/5
## [1] 0.12
# sum(r)/length(r)
# mean(r)
# Năm đầu, danh mục tăng 1.9 lần, năm 2 danh mục tăng 1.2 lần ...
gr <- r + 1
(1.9 * 1.2 * 1.1 * 1.3 * 0.1)^(1/5) - 1
## [1] -0.2008024
# exp(sum(log(gr)) / length(gr)) - 1
# psych::geometric.mean(gr) - 1
Trung vị là giá trị nằm giữa các giá trị của biến ngẫu nhiên, đặc trưng này thường chỉ có ý nghĩa khi các giá trị có thể có rời rạc, hữu hạn
Nếu dãy quan sát có 2n+1 quan sát xếp theo thứ tự tăng dần thì giá trị thứ n+1 là trung vị, nếu có 2n quan sát thì trung vị là trung bình của giá trị thứ (2n-1)/2 và (2n+1)/2
Ví dụ:
x1 <- 1:11
x1
## [1] 1 2 3 4 5 6 7 8 9 10 11
median(x1)
## [1] 6
x2 <- c(2, 4, 7, 8, 3, 1, 2)
# Sắp xếp rồi lấy số ở vị trí thứ n+1
x2 %>% sort() %>% .[ceiling(length(.)/2)]
## [1] 3
# median(x2)
x3 <- x1[-11] # Bỏ số cuối cùng đi
median(x3)
## [1] 5.5
Mốt của biến ngẫu nhiên X là giá trị tương ứng với xác suất lớn nhất. Một biến có thể có nhiều mốt và như vậy số giá trị mốt càng ít thì ý nghĩa của mốt càng lớn
m <- sample(c('a', 'b', 'c', 'd'), size = 20, replace = T)
m
## [1] "b" "a" "a" "a" "d" "b" "a" "a" "b" "c" "b" "a" "a" "b" "d" "a" "a"
## [18] "a" "c" "b"
m %>% table() %>% sort()
## .
## c d b a
## 2 2 6 10
Là trung bình của bình phương khoảng cách của mỗi điểm dữ liệu tới trung bình. Hay trung bình bình phương các độ lệch
Phương sai tổng thể: \[\sigma^2 = \frac{1}{n} \sum_{i=1}^{n} (X_{i} - \bar{X})^2\]
Do mất đi 1 bậc tự do nên Phương sai mẫu: \[ S^2 = \frac{1}{n-1} \sum_{i=1}^{n} (X_{i} - \bar{X})^2\]
Đo lường sự biến động của mẫu với giá trị trung bình mẫu
Độ lệch chuẩn tổng thể: \[\sigma =\sqrt{\frac{1}{n} \sum_{i=1}^{n} (X_{i} - \bar{X})^2}\]
Độ lệch chuẩn mẫu: \[S = \sqrt{\frac{1}{n-1} \sum_{i=1}^{n} (X_{i} - \bar{X})^2} \]
Sai số chuẩn (standard error) \[se = sd / \sqrt{n}\] (se và sd là 2 khái niệm rất dễ bị nhầm lẫn. Sd đo lượng sự biến động của tập mẫu so với giá trị trung bình được ước lượng từ tập mẫu. Nhưng giá trị trung bình ước lượng được không phải là giá trị trung bình thực sự của tổng thể, giá trị này phụ thuộc vào mẫu lựa chọn, khi thay đổi cỡ mẫu hoặc thời gian lấy mẫu … thì giá trị này sẽ thay đổi. SE đo lường sự chính xác của giá trị trung bình đã ước lượng được từ mẫu. Mẫu càng lớn thì giá trị trung bình ước lượng càng tốt hơn hay SE càng nhỏ hơn ) so sánh ### Sai số trung bình tuyệt đối
\[ ASD = \frac{1}{n} \sum_{i=1}^{n} |X_{i} - \bar{X}|\]
Sắp xếp số liệu quan sát theo chiều tăng dần, các giá trị tương ứng với các tần suất tích luỹ 25%, 50%, 75% gọi là tứ phân vị thứ nhất, thứ hai và thứ 3; ký hiệu Q1, Q2, và Q3. Khoảng từ giá trị nhỏ nhất đến Q1 gọi là khoảng tứ phân vị thứ nhất (SQ1); khoảng từ Q1 đến Q2 gọi là khoảng tứ phân vị thứ 2 (SQ2) …
Thông thường các giá trị quan sát tập trung trong khoảng (Q1, Q3) khoảng này gọi là khoảng giá trị chuẩn
Q1 là giá trị quan sát thứ i(1) xác định theo công thức i(1)=(n+1)/4. Nếu n+1 không chia hết cho 4, chẳng hạn n=22, (n+1)/4=5 người ta chọn Q1 là giá trị nằm ở vị trí 3/4 của khoảng X5 và X6. Tứ phân vị thứ 3 cũng tính tương tự như vậy. Chẳng hạn vẫn với n=22 thì i(3)=3(n+1)/4=17 .
x4 <- 1:21
x5 <- seq(6, 16, by = 0.5)
x4
## [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
x5
## [1] 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0 10.5 11.0 11.5 12.0 12.5
## [15] 13.0 13.5 14.0 14.5 15.0 15.5 16.0
quantile(x4, c(.25, 0.5, 0.75))
## 25% 50% 75%
## 6 11 16
quantile(x5, c(.25, 0.5, 0.75))
## 25% 50% 75%
## 8.5 11.0 13.5
data.frame(x4, x5) %>%
gather() %>% ggplot() +
geom_boxplot(aes(x = key, y = value))
–> các quan sát của x4 phân tán hơn so với x5
Được tính bảng độ lớn của hiệu hai giá trị quan sát lớn nhất và nhỏ nhất
set.seed(158)
x6 <- c(sample(1:21, size = 19, replace = TRUE), 1, 21)
x6
## [1] 17 21 13 10 8 10 3 16 15 13 4 21 11 13 10 10 2 9 2 1 21
max(x6) - min(x6)
## [1] 20
max(x4) - min(x4)
## [1] 20
Hạng của dãy quan sát là số quan sát khác nhau của dãy số
Nếu hay dãy quan sát có khoảng biến thiên như nhau thì có thể so sánh hạng của chúng để so sánh độ phân tán.
min_rank(x4) %>% table() %>% names() %>% length()
## [1] 21
min_rank(x6) %>% table() %>% names() %>% length()
## [1] 13
Hạng của dãy số x4 là 21, hạng của dãy số x6 là 14 –> x6 có các quan sát phân tán hơn x4
data.frame(x6, count = min_rank(x6)) %>%
ggplot() +
geom_point(aes(y = count, x = 6), color = "blue", size = 2) +
geom_point(aes(x = 5, y = x4), alpha = 0.3) +
scale_x_discrete(limits = c(5,6))
Hệ số biến thiên là tỷ số giữa độ lệch tiêu chuẩn và giá trị trung bình
Hệ số này càng lớn thì quan sát của dãy số càng phân tán hơn
sd(x4) / mean(x4)
## [1] 0.5640761
sd(x6) / mean(x6)
## [1] 0.5705435
Hai đặc trưng cơ bản về dạng phân phối là độ bất đối xứng và độ nhọn
\[Skew = \frac{\frac{1}{n} \sum_{i=1}^{n} (X_{i} - \bar{X})^3}{\sqrt{\frac{1}{n-1} \sum_{i=1}^{n} (X_{i} - \bar{X})^2}^3} \]
Negative skew: đuôi bên trái dài hơn ~ phân phối lệch trái
mean < median < mode
negative_skew <- data.frame(negative_skew = rbeta(1000,50,2))
negative_skew %>%
ggplot() +
geom_density(aes(x = negative_skew), fill = 'red', alpha= 0.2) +
geom_vline(aes(xintercept = mean(negative_skew)), color = 'green', size = 2) +
geom_vline(aes(xintercept = median(negative_skew)), color = 'blue', size = 2) +
geom_text(aes(x = mean(negative_skew), y = 0, label = "mean"), angle = 90, hjust = -1, vjust = -0.5) +
geom_text(aes(x = median(negative_skew), y = 0, label = "median"), angle = 90, hjust = -1.5, vjust = 2) +
labs(title = "Negative skew",
x = 'X',
caption = "Source: BI - SeAbank") +
theme(plot.title = element_text(hjust = 0.5))
describe(negative_skew)
## vars n mean sd median trimmed mad min max range skew kurtosis
## X1 1 1000 0.96 0.03 0.97 0.96 0.02 0.84 1 0.16 -1.08 1.3
## se
## X1 0
Positive skew: đuôi bên phải dài hơn ~ phân phối lệch phải
Trong trường hợp này mode < median < mean
positive_skew <- data.frame(positive_skew = rbeta(1000, 2, 50))
positive_skew %>%
ggplot() +
geom_density(aes(x = positive_skew), fill = 'red', alpha= 0.2) +
geom_vline(aes(xintercept = mean(positive_skew)), color = 'green', size = 1.5) +
geom_vline(aes(xintercept = median(positive_skew)), color = 'blue', size = 1.5) +
geom_text(aes(x = mean(positive_skew), y = 0, label = "mean"), angle=90, hjust = -1, vjust = 1) +
geom_text(aes(x = median(positive_skew), y = 0, label = "median"), angle=90, hjust = -1.5, vjust = -0.5)+
labs(title = "Positive skew",
x = 'X',
caption = "Source: BI - SeAbank") +
theme(plot.title = element_text(hjust = 0.5))
describe(positive_skew)
## vars n mean sd median trimmed mad min max range skew kurtosis se
## X1 1 1000 0.04 0.03 0.03 0.03 0.02 0 0.15 0.15 1.27 1.81 0
\[ Kurt = \frac{\frac{1}{n} \sum_{i=1}^{n} (X_{i} - \bar{X})^4}{(\frac{1}{n} \sum_{i=1}^{n} (X_{i} - \bar{X})^2)^2} \]
set.seed(158)
df <- data.frame(x1 = rnorm(10000, mean = 0, sd = 3),
x2 = rnorm(10000, mean = 0, sd = 1),
x3 = rnorm(10000, mean = 5, sd = 1))
df %>%
ggplot() +
geom_density(aes(x = x1), fill = 'red', alpha = 0.2) +
geom_density(aes(x = x2), fill = 'blue', alpha = 0.2)+
geom_text(aes(x = mean(x1), y = 0.1),
label = paste('Kurtosis', round(kurtosi(df$x1), 2)),
color = 'red') +
geom_text(aes(x = mean(x1), y = 0.4),
label = paste('Kurtosis',round(kurtosi(df$x2), 2)),
color = 'blue') +
labs(title = "Compare kurtosis of two distribution",
x = 'X',
caption = "Source: BI - SeAbank ") +
theme(plot.title = element_text(hjust = 0.5))
Phân phối xác suất là quy luật cho biết cách gán mỗi xác suất cho mỗi khoảng giá trị của tập số thực, sao cho các tiên đề xác suất được thỏa mãn
Phân phối chuẩn (còn gọi là phân phối Gauss): là một phân phối xác suất cực kì quan trọng trong nhiều lĩnh vực. Nó là họ phân phối có dạng tổng quát giống nhau, chỉ khác tham số trung bình μ và phương sai σ2.
Phân phối chuẩn tắc (standard normal distribution): là phân phối chuẩn với giá trị trung bình bằng 0 và phương sai bằng 1. Phân phối chuẩn còn được gọi là đường cong chuông (bell curve) vì đồ thị của mật độ xác suất có dạng chuông.
density_label <- expression(f(x) == paste(frac(1, sqrt(2 * pi * sigma^2)), " ",
e^{frac(-(x - mu)^2, 2 * sigma^2)}))
df %>%
ggplot() +
geom_density(aes(x = x2), fill = "pink") +
geom_text(aes(x = 0, y = 0.2,
label = paste('Mean = 0'))) +
geom_text(aes(x = 0, y = 0.17,
label = paste('Sd = 1'))) +
labs(title = "Density of standard normal distribution",
x = "X",
caption = "Source: BI - SeAbank") +
annotate("text", label = density_label, x = -2, y = 0.3 ) +
theme(plot.title = element_text(hjust = 0.5))
## Warning in is.na(x): is.na() applied to non-(list or vector) of type
## 'expression'
Có nhiều cách để thể hiện các đặc tính của một phân phối xác suất:
Cách dễ thấy nhất là thông qua hàm mật độ xác suất, nó cho biết khả năng xảy ra của mỗi giá trị của biến ngẫu nhiên.
Một cách khác tương đương khi chỉ định một phân phối chuẩn là thông qua: mômen, ước lượng, hàm đặc trưng, …
cdf_label <- expression(phi(x) == paste(frac(1, sqrt(2 * pi)),
" ", integral(e^(-t^2/2) * dt, -infinity, x)))
set.seed(158)
1:5 %>%
map_dfc(rnorm, n = 1000, sd = 1) ->> df2
df2 %>%
gather() %>%
ggplot(aes(value)) +
stat_ecdf(aes(colour = key)) +
labs(title = "Cummulative distribution function",
x = "X",
y = "Probability",
caption = "Source: BI - SeAbank") +
annotate("text", label = cdf_label, x = 0, y = 0.85 ) +
scale_color_manual(name="Parameter",
labels=c(expression(paste(mu, " = 1, ", sigma, " = 1")),
expression(paste(mu, " = 2, ", sigma, " = 1")),
expression(paste(mu, " = 3, ", sigma, " = 1")),
expression(paste(mu, " = 4, ", sigma, " = 1")),
expression(paste(mu, " = 5, ", sigma, " = 1"))),
values=c("red", "orange", "yellow", "green", "blue")) +
theme(plot.title = element_text(hjust = 0.5))
## Warning in is.na(x): is.na() applied to non-(list or vector) of type
## 'expression'
df2 %>% describe()
## vars n mean sd median trimmed mad min max range skew kurtosis
## V1 1 1000 0.94 1.00 0.96 0.92 1.03 -1.83 4.10 5.93 0.14 -0.04
## V2 2 1000 2.03 0.99 2.02 2.03 0.99 -0.83 5.44 6.27 0.06 0.18
## V3 3 1000 3.03 0.99 3.03 3.04 0.95 0.21 5.91 5.70 -0.07 -0.12
## V4 4 1000 4.03 1.02 4.02 4.03 1.00 0.81 6.89 6.07 -0.02 -0.03
## V5 5 1000 5.04 1.02 5.02 5.03 1.02 1.89 8.73 6.84 0.14 0.00
## se
## V1 0.03
## V2 0.03
## V3 0.03
## V4 0.03
## V5 0.03
Là phân phối đơn giản nhất, hàm phân phối chỉ có tham số duy nhất là số bậc tự do
Ứng dụng trong ước lượng khoảng tin cậy, kiểm định tham số
Khi số bậc tự do lớn phân phối T-student tiệm cận phân phối chuẩn
set.seed(158)
df3 <- data.frame(k1 = rt(1000, 1),
k2 = rt(1000, 2),
k3 = rt(1000, 3),
k5 = rt(1000, 5),
k10 = rt(1000, 10),
k30 = rt(1000, 10))
df3 %>% gather() %>%
mutate(key = fct_relevel(key, "k1", "k2", "k3", "k5", "k10", "k30")) %>%
ggplot() +
geom_density(aes(x = value, color = key), alpha = 0, size = 1) +
scale_x_continuous(limits = c(-6, 6)) +
facet_wrap( ~key)
## Warning: Removed 128 rows containing non-finite values (stat_density).
df3 %>% gather() %>%
mutate(key = fct_relevel(key, "k1", "k2", "k3", "k5", "k10", "k30")) %>%
ggplot() +
geom_density(aes(x = value, color = key), alpha = 0) +
scale_x_continuous(limits = c(-4, 4))
## Warning: Removed 253 rows containing non-finite values (stat_density).
df4 <- data.frame(x = rnorm(1000, 0, 1),
y = rnorm(1000, 5, 1),
z = rt(1000, 30))
p1 <- df4 %>% ggplot() +
geom_density(aes(x), alpha = 0.3, fill = '#C42E26')+
geom_density(aes(z), alpha = 0.2, fill = 'blue') +
geom_text(aes(x = 0, y = 0.1), label = paste('Normal, mean = 0, sd = 1')) +
geom_text(aes(x = 0, y = 0.2), label = paste('T-student, k = 30')) +
labs(x = 'x-z')
p2 <-df4 %>% ggplot() +
geom_density(aes(y), alpha = 0.3, fill = '#C42E26')+
geom_density(aes(z), alpha = 0.2, fill = 'blue') +
geom_text(aes(x = 5, y = 0.1), label = paste('Normal, mean = 5, sd = 1')) +
geom_text(aes(x = 0, y = 0.2), label = paste('T-student, k = 30')) +
labs(x = 'y-z')
stable<- df4 %>%
describe() %>%
mutate_if(is.numeric, function(x){round(x, digits = 2)}) %>%
mutate(vars = c("x", "y", "z"))
stable.p <- ggtexttable(stable, rows = NULL,
theme = ttheme("mRed"))
ggarrange(
ggarrange(p1, p2, ncol = 2),
stable.p,
nrow = 2)
R Functions for Probability Distributions Every distribution that R handles has four functions. There is a root name, for example, the root name for the normal distribution is norm. This root is prefixed by one of the letters
p for “probability”, the cumulative distribution function (c. d. f.)
q for “quantile”, the inverse c. d. f.
d for “density”, the density function (p. f. or p. d. f.)
r for “random”, a random variable having the specified distribution
For the normal distribution, these functions are pnorm, qnorm, dnorm, and rnorm. For the binomial distribution, these functions are pbinom, qbinom, dbinom, and rbinom. And so forth.
Mục đích: chuyển các biến về cùng 1 độ đo. Ví dụ: Khi phân tích dòng tiền gửi của khách hàng theo tháng, có 2 biến số lượng người gửi (đv: người), số tiền gửi (đv: đồng). Nếu vẽ 2 biến này trên cùng 1 đồ thị thì cần phải có 2 trục Y có 2 đơn vị khác nhau. Thay vì làm việc đó, ta quy các biến về cùng 1 độ đo (ở đây là chuẩn hóa vector)
Sau khi chuẩn hóa đặc điểm của biến không bị thay đổi (vì tất cả các quan sát đều áp dụng chung 1 rule)
Chuẩn hóa không có nghĩa là chuyển 1 biến có phân phối khác về phân phối chuẩn
x4 <- sample(1:20, size = 100, replace = TRUE)
normalized_x4 <- (x4 - mean(x4)) / sd(x4) # scale(x4)
ggplot()+
geom_density(aes(x4), fill = "tomato")
ggplot()+
geom_density(aes(normalized_x4), fill = "green", alpha = 0.3)
Cho X là một biến ngẫu nhiên có phân bố gốc F(x, \(\theta\) ) đã biết dạng, nhưng tham số \(\theta\) chưa biết. Nếu X rời rạc thì phân bố gốc có thể thể hiện qua hàm xác suất p(x, \(\theta\) ); với X là biến ngẫu nhiên liên tục phân phối gốc có thể biểu thị qua hàm mật độ f(x, \(\theta\)).
Việc tìm được giá trị đúng của tham số \(\theta\) thường rất khó khăn vì điều này đòi hỏi phải biết toàn bộ thông tin về X nên người ta thường ước lượng tham số căn cứ theo kết quả của mẫu.
Lý thuyết ước lượng thiết lập các qui tắc, tiêu chuẩn và cách đánh giá khi dùng thông tin từ mẫu ước lượng cho các tham số chưa biết của các phân phối.
Phương pháp thứ nhất là sử dụng một thống kê lập từ mẫu ngẫu nhiên để ước lượng và lấy giá trị quan sát mẫu của thống kê này làm giá trị xấp xỉ cho tham số \(\theta\)
Phương pháp thứ hai là sử dụng những khoảng ngẫu nhiên (1 hay nhiều khoảng) thành lập bởi các thống kê lập từ mẫu ngẫu nhiên sao cho xác suất các khoảng này chứa tham số \(\theta\) xác định bằng một mức cho trước (đủ lớn). Các ước lượng này gọi là ước lượng bằng khoảng tin cậy (hay gọi tắt là ước lượng khoảng tin cậy).
Để ước lượng giá trị trung bình \(\mu\) trong quy luật \(N(\mu, \sigma^2)\), ta sẽ dùng trung bình mẫu {X} để ước lượng
Vì quy luật chuẩn phụ thuộc vào hai tham số \(\mu\) và \(\sigma^2\) nên để xây dựng các khoảng tin cậy của \(\mu\) ta xét hai trường hợp:
hàm này tuân theo quy luật N(0,1)
Gọi \(h_{\alpha1}\) là điểm tới hạn dưới \(U_{\alpha}\), \(h_{\alpha2}\) là điểm tới hạn trên \(U_{1-\alpha}\). Khi đó ta có:
\[P(U_{\alpha} < \frac{(\bar{X} - \mu) \sqrt{n}} {\sigma} < U_{1-\alpha}) = 1 - \alpha\]
\[P(\bar{X} - U_{1-\alpha}\frac{\sigma} {\sqrt{n}} < \mu < \bar{X} - U_{\alpha}\frac{\sigma} {\sqrt{n}}) = 1 - \alpha\]
Với độ tin cậy 1 - \(\alpha\) thì khoảng tin cậy của giá trị trung bình nằm trong khoảng
\[\bar{X} - U_{1-\alpha}\frac{\sigma} {\sqrt{n}} < \mu < \bar{X} - U_{\alpha}\frac{\sigma} {\sqrt{n}}\]
\[ h(\bar{X}, \mu) = \frac{(\bar{X} - \mu) \sqrt{n}} {s}\]
hàm này tuân theo quy luật T-student với (n-1) bậc tự do
Hàm mật độ có dạng: \[ Pr(k) = \frac{n!}{k!(n-k)!}p^k(1-p)^{N-k} = \binom{N}{k} p^kq^{N-k}\]
Tần suất mẫu f là hàm ước lượng p (xem thêm sách thống kê về kết quả chứng minh).
Phương sai: \(\frac{p(1-p)}{n} \)
Cách ước lượng tương tự như trên
Ví dụ: H0: Biến ngẫu nhiên x có phân phối chuẩn
Ví dụ: giá trị thống kê ( JB = n( + ) ) được chứng minh tuân theo quy luật phân phối Khi bình phương 2 bậc tự do
Ví dụ: Xác suất xảy ra sự kiện H0 đã được tính toán = 0.04. Ta có thể kết luận bác bỏ H0 (tức là biến ngẫu nhiên x không phân phối chuẩn) với mức ý nghĩa 5% hoặc chấp nhận H0 với mức ý nghĩa < 4%
x <- rnorm(100)
tseries::jarque.bera.test(x)
##
## Jarque Bera Test
##
## data: x
## X-squared = 1.6317, df = 2, p-value = 0.4423
ks.test(x, "pnorm", mean = 0, sd = 1)
##
## One-sample Kolmogorov-Smirnov test
##
## data: x
## D = 0.090843, p-value = 0.3812
## alternative hypothesis: two-sided
shapiro.test(x)
##
## Shapiro-Wilk normality test
##
## data: x
## W = 0.9857, p-value = 0.3561
nortest::ad.test(x)
##
## Anderson-Darling normality test
##
## data: x
## A = 0.23628, p-value = 0.7826
H0: \(\mu=\mu_{0}\)
H1: \(\mu<>\mu_{0}\)
Lập thống kê \(U = \frac{(\bar{X} - \mu_{0}) \sqrt{n}} {\sigma}\), thống kê này tuân theo quy luật phân phối N(0, 1)
Khi chưa biết \(\sigma_{0}\)
Lập thống kê \(T = \frac{(\bar{X} - \mu_{0}) \sqrt{n}} {s}\), thống kê này tuân theo quy luật phân phối T-student (n-1) bậc tự do
x <- rpois(100, 12) # tạo biến ngẫu nhiêu phân phối poisson
head(x)
## [1] 9 13 15 13 10 8
mean(x)
## [1] 12.28
sd(x)
## [1] 3.997676
H0: mu = 10
t.test(x, mu = 10) # H0: Giả sử biến này có giá trị trung bình = 10
##
## One Sample t-test
##
## data: x
## t = 5.7033, df = 99, p-value = 1.221e-07
## alternative hypothesis: true mean is not equal to 10
## 95 percent confidence interval:
## 11.48677 13.07323
## sample estimates:
## mean of x
## 12.28
t.test(x, mu = 11) # H0: Giả sử biến này có giá trị trung bình = 11
##
## One Sample t-test
##
## data: x
## t = 3.2019, df = 99, p-value = 0.001836
## alternative hypothesis: true mean is not equal to 11
## 95 percent confidence interval:
## 11.48677 13.07323
## sample estimates:
## mean of x
## 12.28
y <- rnorm(100, 12, sd(x))
t.test(x, y, var.equal = TRUE)
##
## Two Sample t-test
##
## data: x and y
## t = 1.3943, df = 198, p-value = 0.1648
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
## -0.342367 1.994960
## sample estimates:
## mean of x mean of y
## 12.2800 11.4537
z <- rnorm(100, 12, 6)
t.test(x, z, var.equal = FALSE)
##
## Welch Two Sample t-test
##
## data: x and z
## t = -0.2376, df = 167.12, p-value = 0.8125
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
## -1.656097 1.300292
## sample estimates:
## mean of x mean of y
## 12.2800 12.4579
H0: \(\sigma_{x} = \sigma_{y}\)
var.test(x, y)
##
## F test to compare two variances
##
## data: x and y
## F = 0.83503, num df = 99, denom df = 99, p-value = 0.3713
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
## 0.5618404 1.2410440
## sample estimates:
## ratio of variances
## 0.8350261
var.test(x, z)
##
## F test to compare two variances
##
## data: x and z
## F = 0.39875, num df = 99, denom df = 99, p-value = 7.258e-06
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
## 0.2682959 0.5926364
## sample estimates:
## ratio of variances
## 0.3987504