Test di permutazione

Fondamenti dell'inferenza in Python

Paul Savala

Assistant Professor of Mathematics

Test di permutazione

Due gruppi di omini separati, ciascuno con colori diversi.

Fondamenti dell'inferenza in Python

Test di permutazione

  • Mescola i campioni
  • Osserva l’esito
  • La differenza osservata sembra casuale?

Omini che si scambiano di posto.

Fondamenti dell'inferenza in Python

Test di permutazione in SciPy

new_satisfaction = [94, 85, 79, 91, 82]
old_satisfcation = [90, 87, 77, 85, 82]

# Group together our data data = (new_satisfaction, old_satisfcation)
# Define our test statistic def statistic(x, y): return np.mean(x) - np.mean(y)
# Compute a permutation test for the difference in means stats.permutation_test(data, statistic, n_resamples=1000, vectorized=False, alternative='greater')
Fondamenti dell'inferenza in Python

Test di permutazione per la correlazione

Un grafico a linee con una linea rossa e una blu, debolmente correlate.

stats.pearsonr(red_data, blue_data)[0]
0.08
Fondamenti dell'inferenza in Python

Test di permutazione per la correlazione

data = (red_data, blue_data)

def statistic(x, y): return stats.pearsonr(x, y)[0]
res = stats.permutation_test(data, statistic, n_resamples=1000, vectorized=False, alternative='two-sided')
print(res.pvalue < 0.05)
False
Fondamenti dell'inferenza in Python

Test di permutazione

 

  • Crea una distribuzione nulla mescolando casualmente i dati
  • Verifica la significatività di un risultato

Bootstrapping

 

  • Crea una distribuzione di probabilità campionando casualmente i dati
  • Genera un intervallo di confidenza con gli esiti più probabili
Fondamenti dell'inferenza in Python

Passiamo alla pratica!

Fondamenti dell'inferenza in Python

Preparing Video For Download...