statsmodels.regression.linear_model.GLS

class statsmodels.regression.linear_model.GLS(endog, exog, sigma=None, missing='none', hasconst=None, **kwargs)[source]

广义最小二乘法

Parameters:
endogarray_like

一个一维的内生响应变量。因变量。

exogarray_like

一个 nobs x k 的数组,其中 nobs 是观测值的数量,k 是回归变量的数量。默认情况下不包含截距,应由用户添加。请参阅 statsmodels.tools.add_constant

sigmascalar or array

数组或标量 sigma 是协方差的加权矩阵。 默认值为 None,表示不进行缩放。 如果 sigma 是标量,则假设 sigma 是一个 n x n 的对角矩阵,其中每个对角元素的值为给定的标量 sigma。 如果 sigma 是长度为 n 的向量,则假设 sigma 是一个对角矩阵,对角线上为给定的 sigma。 这应该与 WLS 相同。

missingstr

可用的选项是‘none’、‘drop’和‘raise’。如果选择‘none’,则不进行nan检查。如果选择‘drop’,则会删除任何包含nan的观测值。如果选择‘raise’,则会引发错误。默认值是‘none’。

hasconstNone or bool

指示RHS是否包含用户提供的常数。如果为True,则不检查常数,k_constant设置为1,所有结果统计量都计算为存在常数。如果为False,则不检查常数,k_constant设置为0。

**kwargs

在使用公式接口时,用于设置模型属性的额外参数。

Attributes:
pinv_wexogndarray

pinv_wexogwexog 的 p x n 摩尔-彭罗斯伪逆。

cholsimgainvndarray

伪逆的Cholesky分解的转置。

df_modelfloat

模型的自由度。

df_residfloat

残余自由度。

llffloat

拟合模型的似然函数值。

nobsfloat

观测值的数量 n。

normalized_cov_paramsndarray

p x p 数组 \((X^{T}\Sigma^{-1}X)^{-1}\)

resultsRegressionResults instance

一个属性,如果拟合成功则返回RegressionResults类。

sigmandarray

sigma 是误差项的 n x n 协方差结构。

wexogndarray

通过cholsigmainv白化的设计矩阵

wendogndarray

通过cholsigmainv白化的响应变量

另请参阅

WLS

使用加权最小二乘法拟合线性模型。

OLS

使用普通最小二乘法拟合线性模型。

注释

如果sigma是数据的一个函数,使得其中一个回归变量为常数,那么当前的估计后统计量将不正确。

示例

>>> import statsmodels.api as sm
>>> data = sm.datasets.longley.load()
>>> data.exog = sm.add_constant(data.exog)
>>> ols_resid = sm.OLS(data.endog, data.exog).fit().resid
>>> res_fit = sm.OLS(ols_resid[1:], ols_resid[:-1]).fit()
>>> rho = res_fit.params

rho 是长期数据OLS拟合残差相关性的一个一致估计量。假设这是AR过程数据的实际rho。

>>> from scipy.linalg import toeplitz
>>> order = toeplitz(np.arange(16))
>>> sigma = rho**order

sigma 是一个 n x n 的自相关结构矩阵。

>>> gls_model = sm.GLS(data.endog, data.exog, sigma=sigma)
>>> gls_results = gls_model.fit()
>>> print(gls_results.summary())

方法

fit([method, cov_type, cov_kwds, use_t])

模型的完整拟合。

fit_regularized([方法, alpha, L1_wt, ...])

返回一个正则化的线性回归模型的拟合结果。

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

从公式和数据框创建模型。

get_distribution(params, scale[, exog, ...])

构建预测分布的随机数生成器。

hessian(params)

模型的海森矩阵。

hessian_factor(params[, scale, observed])

计算用于计算Hessian的权重。

information(params)

模型的费舍尔信息矩阵。

initialize()

初始化模型组件。

loglike(params)

计算高斯对数似然函数在参数params处的值。

predict(params[, exog])

从设计矩阵返回线性预测值。

score(参数)

模型的得分向量。

whiten(x)

GLS 白化方法。

属性

df_model

模型的自由度。

df_resid

残余自由度。

endog_names

内生变量的名称。

exog_names

外生变量的名称。


Last update: Oct 16, 2024