Correlazione tra discendenti e genitori
Per quantificare la correlazione tra la profondità del becco di discendenti e genitori, vogliamo calcolare statistiche come il coefficiente di correlazione di Pearson tra genitori e prole. Per ottenere gli intervalli di confidenza, dobbiamo eseguire un pairs bootstrap.
Hai già scritto una funzione per eseguire il pairs bootstrap e ottenere stime dei parametri derivati da una regressione lineare in questa esercitazione. Il tuo compito in questo esercizio è creare una nuova funzione con firma draw_bs_pairs(x, y, func, size=1) che esegua il pairs bootstrap e calcoli un'unica statistica sui campioni in coppia definiti. La statistica di interesse è calcolata chiamando func(bs_x, bs_y). Nel prossimo esercizio, userai pearson_r come func.
Questo esercizio fa parte del corso
Pensiero statistico in Python (Parte 2)
Istruzioni dell'esercizio
- Imposta un array di indici da cui campionare. (Ricorda: nel pairs bootstrap scegliamo casualmente gli indici e li usiamo per ottenere le coppie.)
- Inizializza l'array delle repliche bootstrap. Deve essere un array monodimensionale di lunghezza
size. - Scrivi un ciclo
forper estrarre i campioni. - Scegli casualmente indici dall'array di indici che hai impostato in precedenza.
- Estrai i valori di
xe i valori diydagli array di input usando gli indici appena scelti per generare un campione bootstrap. - Usa
funcper calcolare la statistica di interesse dai campioni bootstrap dixeye salvala nel tuo array di repliche bootstrap. - Restituisci l'array di repliche bootstrap.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
def draw_bs_pairs(x, y, func, size=1):
"""Perform pairs bootstrap for a single statistic."""
# Set up array of indices to sample from: inds
inds = ____
# Initialize replicates: bs_replicates
bs_replicates = ____
# Generate replicates
for i in range(size):
bs_inds = ____
bs_x, bs_y = ____
bs_replicates[i] = ____
return bs_replicates