lib5c.algorithms.variance.nbinom_dispersion module¶
Module for estimating negative binomial dispersion parameters for 5C interaction data.
-
lib5c.algorithms.variance.nbinom_dispersion.dispersion_to_variance(disp, exp)[source]¶ Converts a dispersion estimate to a variance by applying it to the expected value via the relationship
var = exp + disp * exp**2.Parameters: - disp (float or np.ndarray) – The dispersion.
- exp (float or np.ndarray) – The expected value.
Returns: The variance.
Return type: float or np.ndarray
-
lib5c.algorithms.variance.nbinom_dispersion.nb_nll(disp, obs, exp)[source]¶ The negative log likelihood of observed data
obsgiven mean/expected valueexpand dispersion parameterdisp.Parameters: - disp (float or np.ndarray) – The dispersion parameter.
- obs (int or np.ndarray) – The observed data.
- exp (float or np.ndarray) – The mean/expected value.
Returns: The negative log likelihood.
Return type: float
-
lib5c.algorithms.variance.nbinom_dispersion.nb_nll_derivative(disp, obs)[source]¶ Derivative of the negative binomial log-likelihood function with respect to the dispersion parameter, given observed data.
This function is vectorized. Pass one dispersion and a vector of observed values to evaluate the derivative with just that one dispersion on the collection of all the observed values passed. Pass a vector of dispersions and a matrix of observed values to compute a vector of derivative evaluations, using the
ith element of the dispersion vector and theith row of the observed matrix to compute theith derivative evaluation.Parameters: - disp (float or np.ndarray) – The negative binomial dispersion parameter.
- obs (np.ndarray) – The observed values. If
dispis a vector, this should be a matrix whose number of rows equals the length ofdisp.
Returns: The derviative evaluation(s).
Return type: float or np.ndarray
-
lib5c.algorithms.variance.nbinom_dispersion.nb_pmf(k, m, alpha)[source]¶ The negative binomial PMF, parametrized in terms of a mean
mand a dispersionalpha.Parameters: - k (int or np.ndarray) – The observed value.
- m (float or np.ndarray) – The expected or mean value.
- alpha (float or np.ndarray) – The dispersion parameter.
Returns: The value of the PMF.
Return type: float or np.ndarray
-
lib5c.algorithms.variance.nbinom_dispersion.variance_to_dispersion(var, exp, min_disp=None)[source]¶ Converts a variance estimate to a dispersion estimate by reversing the relationship in
dispersion_to_variance(). Only defined for points wherevar > exp. Ifvaris the sample variance andexpis the sample mean, this is the equivalent to the method-of-moments estimate of the dispersion parameter.Parameters: - var (float or np.ndarray) – The variance.
- exp (float or np.ndarray) – The expected value.
- min_disp (float, optional) – Pass a value to enter a lenient mode where underdispersed points will be
allowed, but will not be assigned a dispersion value from the
statistical relationship. Underdispersed points will instead be assigned
the
min_dispvalue.
Returns: The dispersion.
Return type: float or np.ndarray