Tiến tới xấp xỉ lưới (grid approximation)
Chúc mừng! Bạn vừa được tuyển làm nhà phân tích dữ liệu tại Bộ Y tế của chính phủ. Nội các đang cân nhắc mua một loại thuốc hoàn toàn mới chống lại một loại virus chết người và dễ lây lan. Tuy nhiên, vẫn còn hoài nghi về mức độ hiệu quả của loại thuốc này đối với virus. Nhiệm vụ của bạn là ước tính tỷ lệ hiệu lực của thuốc, tức phần trăm bệnh nhân được chữa khỏi nhờ thuốc.
Một thí nghiệm đã được thiết kế nhanh chóng, trong đó 10 bệnh nhân mắc bệnh được điều trị bằng thuốc. Khi biết có bao nhiêu người trong số họ được chữa khỏi, bạn có thể dùng phân phối nhị thức, với bệnh nhân được chữa khỏi là một "thành công" và tỷ lệ hiệu lực là "xác suất thành công". Trong lúc chờ kết quả thí nghiệm, bạn quyết định chuẩn bị lưới tham số.
numpy và pandas đã được nhập sẵn lần lượt là np và pd.
Bài tập này là một phần của khóa học
Phân tích dữ liệu Bayesian với Python
Hướng dẫn bài tập
- Dùng
np.arange()để tạo một mảng chứa tất cả số lượng bệnh nhân có thể được chữa khỏi (từ 0 đến 10) và gán chonum_patients_cured. - Dùng
np.arange()để tạo một mảng chứa tất cả các giá trị có thể có của tỷ lệ hiệu lực (từ 0 đến 1, bước 0,01) và gán choefficacy_rate. - Kết hợp
num_patients_curedvàefficacy_ratevào một DataFrame têndf, liệt kê tất cả các tổ hợp có thể của hai đại lượng này. - Gán
["num_patients_cured", "efficacy_rate"]cho các cột củadfvà in ra.
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.
# Create cured patients array from 1 to 10
num_patients_cured = ____
# Create efficacy rate array from 0 to 1 by 0.01
efficacy_rate = ____
# Combine the two arrays in one DataFrame
df = ____([(x, y) for x in ____ for y in ____])
# Name the columns
df.columns = ____
# Print df
print(df)