statsmodels.stats.multitest.local_fdr#

statsmodels.stats.multitest.local_fdr(zscores, null_proportion=1.0, null_pdf=None, deg=7, nbins=30, alpha=0)[source]#

Calculate local FDR values for a list of Z-scores

Parameters:
zscoresndarray

A vector of Z-scores

null_proportionfloat, optional

The assumed proportion of true null hypotheses

null_pdfcallable, optional

The density of null Z-scores; if None, use standard normal

degint, optional

The maximum exponent in the polynomial expansion of the density of non-null Z-scores

nbinsint, optional

The number of bins for estimating the marginal density of Z-scores.

alphafloat, optional

Use Poisson ridge regression with parameter alpha to estimate the density of non-null Z-scores.

Returns:
fdrndarray

A vector of FDR values

References

Examples

Basic use (the null Z-scores are taken to be standard normal):

>>> from statsmodels.stats.multitest import local_fdr
>>> import numpy as np
>>> zscores = np.random.randn(30)
>>> fdr = local_fdr(zscores)

Use a Gaussian null distribution estimated from the data:

>>> from statsmodels.stats.multitest import NullDistribution
>>> null = NullDistribution(zscores)
>>> fdr = local_fdr(zscores, null_pdf=null.pdf)