Een permutatiesteekproef genereren
In de video heb je geleerd dat permutation sampling een uitstekende manier is om de hypothese te simuleren dat twee variabelen identieke kansverdelingen hebben. Dit is vaak een hypothese die je wilt toetsen, dus in deze oefening schrijf je een functie om een permutatiesteekproef te genereren uit twee gegevenssets.
Onthoud: een permutatiesteekproef van twee arrays met respectievelijk n1 en n2 elementen wordt geconstrueerd door de arrays te concateneren, de inhoud van de geconcateneerde array door elkaar te husselen en vervolgens de eerste n1 elementen te nemen als de permutatiesteekproef van de eerste array en de laatste n2 elementen als de permutatiesteekproef van de tweede array.
Deze oefening maakt deel uit van de cursus
Statistical Thinking in Python (deel 2)
Oefeninstructies
- Concateneer de twee invoerarrays tot één met
np.concatenate(). Zorg dat jedata1endata2samen als één argument(data1, data2)doorgeeft. - Gebruik
np.random.permutation()om de geconcateneerde array te permuteren. - Sla de eerste
len(data1)elementen vanpermuted_dataop alsperm_sample_1en de laatstelen(data2)elementen vanpermuted_dataalsperm_sample_2. In de praktijk kun je dit doen door:len(data1)enlen(data1):te gebruiken ompermuted_datate slicen. - Retourneer
perm_sample_1enperm_sample_2.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
def permutation_sample(data1, data2):
"""Generate a permutation sample from two data sets."""
# Concatenate the data sets: data
data = ____
# Permute the concatenated array: permuted_data
permuted_data = ____
# Split the permuted array into two: perm_sample_1, perm_sample_2
perm_sample_1 = permuted_data[____]
perm_sample_2 = permuted_data[____]
return perm_sample_1, perm_sample_2