Generera ett permutationsurval
I videon lärde du dig att permutationssampling är ett utmärkt sätt att simulera hypotesen att två variabler har identiska sannolikhetsfördelningar. Det är ofta just den hypotesen du vill testa, och i den här övningen skriver du en funktion som genererar ett permutationsurval från två datamängder.
Kom ihåg att ett permutationsurval av två matriser med n1 respektive n2 element konstrueras genom att konkatenera matriserna, slumpmässigt blanda elementen i den konkatenerade matrisen och sedan ta de första n1 elementen som permutationsurval för den första matrisen och de sista n2 elementen som permutationsurval för den andra matrisen.
Den här övningen är en del av kursen
Statistiskt tänkande i Python (del 2)
Övningsinstruktioner
- Konkatenera de två indatamatriserna till en enda med hjälp av
np.concatenate(). Se till att skicka indata1ochdata2som ett argument(data1, data2). - Använd
np.random.permutation()för att permutera den konkatenerade matrisen. - Lagra de första
len(data1)elementen ipermuted_datasomperm_sample_1och de sistalen(data2)elementen somperm_sample_2. I praktiken görs detta med:len(data1)respektivelen(data1):för att indexerapermuted_data. - Returnera
perm_sample_1ochperm_sample_2.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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