Aan de slagGa gratis aan de slag

Is snaveldiepte überhaupt erfelijk in G. scandens?

De erfelijkheid van snaveldiepte in G. scandens lijkt laag. Het kan zijn dat deze geobserveerde erfelijkheid puur toeval is en dat snaveldiepte in deze soort eigenlijk niet echt erfelijk is. Je gaat die hypothese hier testen. Hiervoor doe je een permutatietest met paren.

Deze oefening maakt deel uit van de cursus

Statistical Thinking in Python (deel 2)

Cursus bekijken

Oefeninstructies

  • Initialiseer je array met replicaten van erfelijkheid. We nemen 10.000 permutatiereplicaten van paren.
  • Schrijf een for-lus om je replicaten te genereren.
    • Permuteer de array bd_parent_scandens met np.random.permutation().
    • Bereken de erfelijkheid tussen de gepermuteerde array en de array bd_offspring_scandens met de functie heritability() die je in de vorige oefening hebt geschreven. Sla het resultaat op in de replicatenarray.
  • Bereken de p-waarde als het aantal replicaten dat groter is dan de geobserveerde heritability_scandens die je in de vorige oefening hebt berekend.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Initialize array of replicates: perm_replicates
perm_replicates = ____

# Draw replicates
for i in range(10000):
    # Permute parent beak depths
    bd_parent_permuted = ____
    perm_replicates[i] = ____


# Compute p-value: p
p = np.sum(____ >= ____) / len(____)

# Print the p-value
print('p-val =', p)
Code bewerken en uitvoeren