This page is a reference documentation. It only explains the class signature, and not how to use it. Please refer to the user guide for the big picture.

8.12.6. nilearn.glm.LikelihoodModelResults

class nilearn.glm.LikelihoodModelResults(theta, Y, model, cov=None, dispersion=1.0, nuisance=None, rank=None)[source]

Class to contain results from likelihood models.

This is the class in which things like AIC, BIC, llf can be implemented as methods, not computed in, say, the fit method of OLSModel.

__init__(theta, Y, model, cov=None, dispersion=1.0, nuisance=None, rank=None)[source]

Set up results structure


Parameter estimates from estimated model.



modelLikelihoodModel instance

Model used to generate fit.

covNone or ndarray, optional

Covariance of thetas.

dispersionscalar, optional

Multiplicative factor in front of cov. Default=1.

nuisanceNone of ndarray, optional

Parameter estimates needed to compute logL.

rankNone or scalar, optional

Rank of the model. If rank is not None, it is used for df_model instead of the usual counting of parameters.


The covariance of thetas is given by:

dispersion * cov

For (some subset of models) dispersion will typically be the mean square error from the estimated model (sigma^2)

This class is experimental. It may change in any future release of Nilearn.


The maximized log-likelihood


Return the (Wald) t-statistic for a given parameter estimate.

Use Tcontrast for more complicated (Wald) t-statistics.

vcov(matrix=None, column=None, dispersion=None, other=None)[source]

Variance/covariance matrix of linear contrast

matrix(dim, self.theta.shape[0]) array, optional

Numerical contrast specification, where dim refers to the ‘dimension’ of the contrast i.e. 1 for t contrasts, 1 or more for F contrasts.

columnint, optional

Alternative way of specifying contrasts (column index).

dispersionfloat or (n_voxels,) array, optional

Value(s) for the dispersion parameters.

other(dim, self.theta.shape[0]) array, optional

Alternative contrast specification (?).

cov(dim, dim) or (n_voxels, dim, dim) array

The estimated covariance matrix/matrices.

Returns the variance/covariance matrix of a linear contrast of the
estimates of theta, multiplied by dispersion which will often be an
estimate of dispersion, like, sigma^2.
The covariance of interest is either specified as a (set of) column(s)
or a matrix.
Tcontrast(matrix, store=('t', 'effect', 'sd'), dispersion=None)[source]

Compute a Tcontrast for a row vector matrix

To get the t-statistic for a single column, use the ‘t’ method.

matrix1D array-like

Contrast matrix.

storesequence, optional

Components of t to store in results output object. Defaults to all components (‘t’, ‘effect’, ‘sd’).

dispersionNone or float, optional
resTContrastResults object
Fcontrast(matrix, dispersion=None, invcov=None)[source]

Compute an Fcontrast for a contrast matrix matrix.

Here, matrix M is assumed to be non-singular. More precisely

M pX pX' M'

is assumed invertible. Here, pX is the generalized inverse of the design matrix of the model. There can be problems in non-OLS models where the rank of the covariance of the noise is not full.

See the contrast module to see how to specify contrasts. In particular, the matrices from these contrasts will always be non-singular in the sense above.

matrix1D array-like

Contrast matrix.

dispersionNone or float, optional

If None, use self.dispersion.

invcovNone or array, optional

Known inverse of variance covariance matrix. If None, calculate this matrix.

f_resFContrastResults instance

with attributes F, df_den, df_num


For F contrasts, we now specify an effect and covariance.

conf_int(alpha=0.05, cols=None, dispersion=None)[source]

The confidence interval of the specified theta estimates.

alphafloat, optional

The alpha level for the confidence interval. ie., alpha = .05 returns a 95% confidence interval. Default=0.05.

colstuple, optional

cols specifies which confidence intervals to return.

dispersionNone or scalar, optional

Scale factor for the variance / covariance (see class docstring and vcov method docstring).


cis is shape (len(cols), 2) where each row contains [lower, upper] for the given entry in cols


Confidence intervals are two-tailed.

tailsstring, optional

Possible values: ‘two’ | ‘upper’ | ‘lower’


>>> from numpy.random import standard_normal as stan
>>> from nilearn.glm import OLSModel
>>> x = np.hstack((stan((30,1)),stan((30,1)),stan((30,1))))
>>> beta=np.array([3.25, 1.5, 7.0])
>>> y =,beta) + stan((30))
>>> model = OLSModel(x).fit(y)
>>> confidence_intervals = model.conf_int(cols=(1,2))