Mô-đun np.random và phép thử Bernoulli
Bạn có thể xem một phép thử Bernoulli như việc tung một đồng xu có thể bị lệch. Cụ thể, mỗi lần tung có xác suất \(p\) ra mặt ngửa (thành công) và xác suất \(1-p\) ra mặt sấp (thất bại). Trong bài này, bạn sẽ viết hàm thực hiện n phép thử Bernoulli, perform_bernoulli_trials(n, p), trả về số lần thành công trong n phép thử Bernoulli, mỗi phép thử có xác suất thành công là p. Để thực hiện mỗi phép thử Bernoulli, hãy dùng hàm rng.random(), hàm này trả về một số ngẫu nhiên trong khoảng từ 0 đến 1.
Bài tập này là một phần của khóa học
Tư duy Thống kê với Python (Phần 1)
Hướng dẫn bài tập
- Định nghĩa hàm với chữ ký
perform_bernoulli_trials(n, p).- Khởi tạo biến
n_successbằng 0 để đếm số giá trịTrue(tức các lần thử Bernoulli thành công). - Viết vòng lặp
forđể thực hiện một phép thử Bernoulli ở mỗi vòng lặp và tăng số lần thành công nếu kết quả làTrue. Thực hiệnnvòng lặp bằng cách lặp quarange(n).- Để thực hiện một phép thử Bernoulli, chọn một số ngẫu nhiên từ 0 đến 1 bằng
rng.random(). Nếu số bạn chọn nhỏ hơnp, hãy tăngn_success(dùng toán tử+= 1). Một bộ sinh số ngẫu nhiên (RNG) đã được khởi tạo sẵn thành biếnrngvà đã được gieo hạt.
- Để thực hiện một phép thử Bernoulli, chọn một số ngẫu nhiên từ 0 đến 1 bằng
- Hàm trả về số lần thành công
n_success.
- Khởi tạo biến
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
def perform_bernoulli_trials(n, p):
"""Perform n Bernoulli trials with success probability p
and return number of successes."""
# Initialize number of successes: n_success
n_success = ____
# Perform trials
for i in ____:
# Choose random number between zero and one: random_number
# If less than p, it's a success so add one to n_success
if ____:
____
return n_success