Statistical Thinking in Python (Part 2)
Justin Bois
Lecturer at the California Institute of Technology


import numpy as np # clickthrough_A, clickthrough_B: arr. of 1s and 0sdef diff_frac(data_A, data_B): frac_A = np.sum(data_A) / len(data_A) frac_B = np.sum(data_B) / len(data_B) return frac_B - frac_Adiff_frac_obs = diff_frac(clickthrough_A, clickthrough_B)
perm_replicates = np.empty(10000) for i in range(10000): perm_replicates[i] = permutation_replicate( clickthrough_A, clickthrough_B, diff_frac)p_value = np.sum(perm_replicates >= diff_frac_obs) / 10000p_value
0.016
Statistical Thinking in Python (Part 2)