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 相同。
- missing
str 可用的选项是‘none’、‘drop’和‘raise’。如果选择‘none’,则不进行nan检查。如果选择‘drop’,则会删除任何包含nan的观测值。如果选择‘raise’,则会引发错误。默认值是‘none’。
- hasconst
Noneor bool 指示RHS是否包含用户提供的常数。如果为True,则不检查常数,k_constant设置为1,所有结果统计量都计算为存在常数。如果为False,则不检查常数,k_constant设置为0。
- **kwargs
在使用公式接口时,用于设置模型属性的额外参数。
- Attributes:¶
- pinv_wexog
ndarray pinv_wexog 是 wexog 的 p x n 摩尔-彭罗斯伪逆。
- cholsimgainv
ndarray 伪逆的Cholesky分解的转置。
df_modelfloat模型的自由度。
df_residfloat残余自由度。
- llf
float 拟合模型的似然函数值。
- nobs
float 观测值的数量 n。
- normalized_cov_params
ndarray p x p 数组 \((X^{T}\Sigma^{-1}X)^{-1}\)
- results
RegressionResultsinstance 一个属性,如果拟合成功则返回RegressionResults类。
- sigma
ndarray sigma 是误差项的 n x n 协方差结构。
- wexog
ndarray 通过cholsigmainv白化的设计矩阵
- wendog
ndarray 通过cholsigmainv白化的响应变量
- pinv_wexog
注释
如果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.paramsrho 是长期数据OLS拟合残差相关性的一个一致估计量。假设这是AR过程数据的实际rho。
>>> from scipy.linalg import toeplitz >>> order = toeplitz(np.arange(16)) >>> sigma = rho**ordersigma 是一个 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)模型的费舍尔信息矩阵。
初始化模型组件。
loglike(params)计算高斯对数似然函数在参数params处的值。
predict(params[, exog])从设计矩阵返回线性预测值。
score(参数)模型的得分向量。
whiten(x)GLS 白化方法。
属性
模型的自由度。
残余自由度。
内生变量的名称。
外生变量的名称。