Op weg naar grid-approximatie
Gefeliciteerd! Je bent zojuist aangenomen als data-analist bij het Ministerie van Volksgezondheid. Het kabinet overweegt de aanschaf van een gloednieuw medicijn tegen een dodelijk en besmettelijk virus. Er bestaan echter twijfels over hoe effectief het nieuwe medicijn is tegen het virus. Jij krijgt de taak om de werkzaamheid van het medicijn te schatten, oftewel het percentage patiënten dat door het medicijn geneest.
Er is snel een experiment opgezet waarbij 10 zieke patiënten met het medicijn zijn behandeld. Zodra je weet hoeveel van hen genezen zijn, kun je de binomiale verdeling gebruiken, waarbij een genezen patiënt een "succes" is en de werkzaamheid de "kans op succes". Terwijl je op de resultaten van het experiment wacht, besluit je het parameterrooster alvast voor te bereiden.
numpy en pandas zijn al voor je geïmporteerd als respectievelijk np en pd.
Deze oefening maakt deel uit van de cursus
Bayesian Data Analysis in Python
Oefeninstructies
- Gebruik
np.arange()om een array te maken met alle mogelijke aantallen genezen patiënten (van 0 tot en met 10) en wijs deze toe aannum_patients_cured. - Gebruik
np.arange()om een array te maken met alle mogelijke waarden voor de werkzaamheid (van 0 tot 1, in stappen van 0,01) en wijs deze toe aanefficacy_rate. - Combineer
num_patients_curedenefficacy_ratein een DataFrame genaamddf, met alle mogelijke combinaties van de twee. - Wijs
["num_patients_cured", "efficacy_rate"]toe aan de kolommen vandfen print het.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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)