Hướng dẫn入门 về Phân phối nhị thức trong R

Xin chào các bạnfuture lập trình viên R! Hôm nay, chúng ta sẽ cùng lặn sâu vào thế giới kỳ diệu của phân phối nhị thức trong R. Đừng lo lắng nếu bạn chưa từng viết mã trước đây - tôi sẽ là người hướng dẫn thân thiện của bạn trong hành trình này. Cuối cùng của bài hướng dẫn này, bạn sẽ có thể manipulates phân phối nhị thức như một chuyên gia!

R - Binomial Distribution

Phân phối nhị thức là gì?

Trước khi chúng ta nhảy vào mã, hãy hiểu phân phối nhị thức là gì. Hãy tưởng tượng bạn đang tung đồng xu 10 lần. Phân phối nhị thức sẽ giúp bạn tính toán xác suất của một số đầu tiên cụ thể. Nó liên quan đến việc tính toán xác suất của thành công trong một số lần thử nghiệm độc lập cố định.

Bây giờ, hãy khám phá bốn hàm chính mà R cung cấp để làm việc với phân phối nhị thức.

Bốn hàm kỳ diệu của Phân phối nhị thức trong R

R cung cấp cho chúng ta bốn hàm mạnh mẽ để làm việc với phân phối nhị thức. Hãy gặp gỡ chúng:

Hàm Mục đích
dbinom() Tính toán xác suất mật độ
pbinom() Tính toán xác suất cumulate
qbinom() Tính toán quantile
rbinom() Tạo ra các số ngẫu nhiên

Hãy cùng khám phá chi tiết từng hàm này.

dbinom(): Nhà soạn nhạc Xác suất

dbinom() làm gì?

Hàm dbinom() tính toán xác suất của việc có chính xác k thành công trong n lần thử nghiệm. Nó giống như hỏi, "Xác suất của việc có chính xác 3 đầu tiên khi tôi tung đồng xu 5 lần?"

Cú pháp và Tham số

dbinom(x, size, prob)
  • x: số lần thành công mà chúng ta quan tâm
  • size: số lần thử nghiệm
  • prob: xác suất thành công trong mỗi lần thử nghiệm

Ví dụ: Tung đồng xu

Hãy tính toán xác suất của việc có chính xác 3 đầu tiên trong 5 lần tung đồng xu:

probability <- dbinom(3, size = 5, prob = 0.5)
print(probability)

Khi bạn chạy đoạn mã này, bạn sẽ thấy:

[1] 0.3125

Điều này có nghĩa là có 31.25% xác suất của việc có chính xác 3 đầu tiên trong 5 lần tung đồng xu.

pbinom(): Máy tính Xác suất Cumulate

pbinom() làm gì?

Hàm pbinom() tính toán xác suất cumulate - xác suất của việc có lên đến k thành công trong n lần thử nghiệm. Nó giống như hỏi, "Xác suất của việc có 3 hoặc ít hơn đầu tiên khi tôi tung đồng xu 5 lần?"

Cú pháp và Tham số

pbinom(q, size, prob, lower.tail = TRUE)
  • q: số lần thành công mà chúng ta quan tâm
  • size: số lần thử nghiệm
  • prob: xác suất thành công trong mỗi lần thử nghiệm
  • lower.tail: nếu TRUE (mặc định), tính toán P(X ≤ x); nếu FALSE, tính toán P(X > x)

Ví dụ: Điểm thi

Hãy tưởng tượng một kỳ thi nhiều lựa chọn với 10 câu hỏi, mỗi câu hỏi có 4 lựa chọn. Xác suất của việc có 6 hoặc ít hơn câu trả lời đúng khi đoán?

probability <- pbinom(6, size = 10, prob = 0.25)
print(probability)

Chạy đoạn mã này sẽ cho ra:

[1] 0.9803073

Điều này có nghĩa là có 98.03% xác suất của việc có 6 hoặc ít hơn câu trả lời đúng khi đoán!

qbinom(): Cuộc hành trình Quantile

qbinom() làm gì?

Hàm qbinom() là như ngược lại của pbinom(). Nó tìm số lần thành công tối thiểu cho một xác suất cumulate cụ thể.

Cú pháp và Tham số

qbinom(p, size, prob, lower.tail = TRUE)
  • p: xác suất cumulate
  • size: số lần thử nghiệm
  • prob: xác suất thành công trong mỗi lần thử nghiệm
  • lower.tail: nếu TRUE (mặc định), sử dụng P(X ≤ x); nếu FALSE, sử dụng P(X > x)

Ví dụ: Kiểm soát chất lượng

Một nhà máy sản xuất bóng đèn. Họ muốn biết số lượng bóng đèn lỗi trong một lô 100 để duy trì tiêu chuẩn chất lượng 95%.

max_defects <- qbinom(0.05, size = 100, prob = 0.03, lower.tail = FALSE)
print(max_defects)

Đoạn mã này sẽ输出:

[1] 6

Điều này có nghĩa là họ có thể có tối đa 6 bóng đèn lỗi để duy trì tiêu chuẩn chất lượng 95% của họ.

rbinom(): Trình tạo số ngẫu nhiên

rbinom() làm gì?

Hàm rbinom() tạo ra các số ngẫu nhiên từ phân phối nhị thức. Nó giống như mô phỏng các thử nghiệm thực tế!

Cú pháp và Tham số

rbinom(n, size, prob)
  • n: số lượng giá trị ngẫu nhiên cần tạo
  • size: số lần thử nghiệm
  • prob: xác suất thành công trong mỗi lần thử nghiệm

Ví dụ: Mô phỏng tung đồng xu

Hãy mô phỏng tung đồng xu 10 lần, và chúng ta sẽ làm thử nghiệm này 5 lần:

simulations <- rbinom(5, size = 10, prob = 0.5)
print(simulations)

Bạn có thể nhận được kết quả như sau:

[1] 4 6 5 3 7

Mỗi số đại diện cho số lần đầu tiên trong một bộ 10 lần tung đồng xu. Như bạn có thể thấy, nó là ngẫu nhiên mỗi lần!

Kết hợp tất cả lại

Bây giờ chúng ta đã khám phá từng hàm, hãy sử dụng chúng trong một tình huống thực tế. Hãy tưởng tượng bạn là một nhà dự báo thời tiết cố gắng dự đoán ngày mưa.

# Xác suất của chính xác 3 ngày mưa trong một tuần 7 ngày
exactly_three <- dbinom(3, size = 7, prob = 0.3)

# Xác suất của 3 hoặc ít hơn ngày mưa
three_or_fewer <- pbinom(3, size = 7, prob = 0.3)

# Số ngày mưa với xác suất 80%
days_with_80_percent <- qbinom(0.8, size = 7, prob = 0.3)

# Mô phỏng 10 tuần mưa
rain_simulations <- rbinom(10, size = 7, prob = 0.3)

print(paste("Xác suất của chính xác 3 ngày mưa:", exactly_three))
print(paste("Xác suất của 3 hoặc ít hơn ngày mưa:", three_or_fewer))
print(paste("Ngày mưa với xác suất 80%:", days_with_80_percent))
print("Mô phỏng ngày mưa cho 10 tuần:")
print(rain_simulations)

Ví dụ này cho thấy cách các hàm này làm việc cùng nhau để phân tích và dự đoán các mẫu ngày mưa.

Kết luận

Chúc mừng! Bạn đã chính thức bước vào thế giới của phân phối nhị thức trong R. Nhớ rằng, thực hành làm nên hoàn hảo. Thử thay đổi các số trong các ví dụ này và xem会发生什么. Sớm thôi, bạn sẽ sử dụng các hàm này như một nhà khoa học dữ liệu có kinh nghiệm!

Chúc bạn may mắn và xác suất luôn ủng hộ bạn!

Credits: Image by storyset