napistu.statistics.hypothesis_testing
Hypothesis tests.
Public Functions
- binomial_test_vectorized(sample_successes, sample_total, population_successes, population_total)
Fast vectorized one-tailed binomial test using normal approximation.
- fisher_exact_vectorized(observed_members, missing_members, observed_nonmembers, nonobserved_nonmembers)
Fast vectorized one-tailed Fisher exact test using normal approximation.
- proportion_test_vectorized(sample_successes, sample_total, population_successes, population_total)
Fast vectorized one-tailed proportion test using normal approximation.
Functions
|
Binomial test for enrichment in sampled edges. |
|
Fast vectorized one-tailed Fisher exact test using normal approximation. |
|
Fast vectorized one-tailed proportion test using normal approximation. |
- napistu.statistics.hypothesis_testing.binomial_test_vectorized(sample_successes, sample_total, population_successes, population_total) tuple[ndarray, ndarray]
Binomial test for enrichment in sampled edges.
H0: Sample edges are drawn proportionally from universe H1: This pathway pair is enriched in sample
- Parameters:
sample_successes (array) – Observed edges for each pathway pair
sample_total (int) – Total edges in sample (e.g., 10K)
population_successes (array) – Universe edges for each pathway pair
population_total (int) – Total edges in universe (e.g., 8M)
- Returns:
expected (array) – Expected edges under null
p_values (array) – One-tailed p-values (upper tail)
- napistu.statistics.hypothesis_testing.fisher_exact_vectorized(observed_members: list[int] | ndarray, missing_members: list[int] | ndarray, observed_nonmembers: list[int] | ndarray, nonobserved_nonmembers: list[int] | ndarray) tuple[ndarray, ndarray]
Fast vectorized one-tailed Fisher exact test using normal approximation.
Parameters:
- observed_members, missing_members, observed_nonmembers, nonobserved_nonmembersarray-like
The four cells of the 2x2 contingency tables (must be non-negative)
Returns:
- odds_ratiosnumpy array
Odds ratios for each test
- p_valuesnumpy array
One-tailed p-values (tests for enrichment)
- napistu.statistics.hypothesis_testing.proportion_test_vectorized(sample_successes: list[int] | ndarray, sample_total: int, population_successes: list[int] | ndarray, population_total: int) tuple[ndarray, ndarray, ndarray]
Fast vectorized one-tailed proportion test using normal approximation.
Tests whether the proportion of successes in a sample differs from the proportion in a reference population.
- Parameters:
sample_successes (array-like) – Number of successes in the sample (must be non-negative)
sample_total (int) – Total number of observations in the sample (must be positive)
population_successes (array-like) – Number of successes in the population (must be non-negative)
population_total (int) – Total number of observations in the population (must be positive)
- Returns:
expected_successes (numpy array) – Expected number of successes in sample under null hypothesis
odds_ratios (numpy array) – Odds ratios for each test
p_values (numpy array) – One-tailed p-values (tests for enrichment, upper tail)