class statsmodels.regression.process_regression.ProcessMLE(endog, exog, exog_scale, exog_smooth, exog_noise, time, groups, cov=None, **kwargs)[source]

Fit a Gaussian mean/variance regression model.

This class fits a one-dimensional Gaussian process model with parameterized mean and covariance structures to grouped data. For each group, there is an independent realization of a latent Gaussian process indexed by an observed real-valued time variable.. The data consist of the Gaussian process observed at a finite number of time values.

The process mean and variance can be lined to covariates. The mean structure is linear in the covariates. The covariance structure is non-stationary, and is defined parametrically through ‘scaling’, and ‘smoothing’ parameters. The covariance of the process between two observations in the same group is a function of the distance between the time values of the two observations. The scaling and smoothing parameters can be linked to covariates.

The observed data are modeled as the sum of the Gaussian process realization and independent white noise. The standard deviation of the white noise can be linked to covariates.

The data should be provided in ‘long form’, with a group label to indicate which observations belong to the same group. Observations in different groups are always independent.


The dependent variable.


The design matrix for the mean structure


The design matrix for the scaling structure


The design matrix for the smoothness structure


The design matrix for the white noise structure. The linear predictor is the log of the white noise standard deviation.

timearray-like (1-dimensional)

The univariate index values, used to calculate distances between observations in the same group, which determines their correlations.

groupsarray-like (1-dimensional)

The group values.

cova ProcessCovariance instance

Defaults to GaussianCovariance.


Names of endogenous variables


Names of exogenous variables


covariance(time, scale_params, …)

Returns a Gaussian process covariance matrix.

fit([start_params, method, maxiter])

Fit a grouped Gaussian process regression using MLE.

from_formula(formula, data[, subset, drop_cols])

Create a Model from a formula and dataframe.


The Hessian matrix of the model


Fisher information matrix of model


Initialize (possibly re-initialize) a Model instance.


Calculate the log-likelihood function for the model.

predict(params[, exog])

Obtain predictions of the mean structure.


Calculate the score function for the model.


Split the packed parameter vector into blocks.