离散因变量回归

用于有限和定性因变量的回归模型。该模块目前支持对二元(Logit、Probit)、名义(MNLogit)或计数(Poisson、NegativeBinomial)数据的模型估计。

从版本0.9开始,这也包括了新的计数模型,这些模型在0.9中仍然是实验性的,包括负二项分布模型(NegativeBinomialP)、广义泊松模型(GeneralizedPoisson)和零膨胀模型(ZeroInflatedPoisson、ZeroInflatedNegativeBinomialP和ZeroInflatedGeneralizedPoisson)。

查看模块参考以获取命令和参数。

示例

# Load the data from Spector and Mazzeo (1980)
In [1]: import statsmodels.api as sm

In [2]: spector_data = sm.datasets.spector.load_pandas()

In [3]: spector_data.exog = sm.add_constant(spector_data.exog)

# Logit Model
In [4]: logit_mod = sm.Logit(spector_data.endog, spector_data.exog)

In [5]: logit_res = logit_mod.fit()
Optimization terminated successfully.
         Current function value: 0.402801
         Iterations 7

In [6]: print(logit_res.summary())
                           Logit Regression Results                           
==============================================================================
Dep. Variable:                  GRADE   No. Observations:                   32
Model:                          Logit   Df Residuals:                       28
Method:                           MLE   Df Model:                            3
Date:                   三, 16 10 2024   Pseudo R-squ.:                  0.3740
Time:                        18:36:26   Log-Likelihood:                -12.890
converged:                       True   LL-Null:                       -20.592
Covariance Type:            nonrobust   LLR p-value:                  0.001502
==============================================================================
                 coef    std err          z      P>|z|      [0.025      0.975]
------------------------------------------------------------------------------
const        -13.0213      4.931     -2.641      0.008     -22.687      -3.356
GPA            2.8261      1.263      2.238      0.025       0.351       5.301
TUCE           0.0952      0.142      0.672      0.501      -0.182       0.373
PSI            2.3787      1.065      2.234      0.025       0.292       4.465
==============================================================================

详细的示例可以在这里找到:

技术文档

目前所有模型都是通过最大似然法估计的,并假设误差是独立同分布的。

所有离散回归模型定义了相同的方法并遵循相同的结构,这与回归结果类似,但具有一些特定于离散模型的方法。此外,其中一些模型包含额外的模型特定方法和属性。

参考文献

这类模型的一般参考文献包括:

A.C. Cameron and P.K. Trivedi.  `Regression Analysis of Count Data`.
    Cambridge, 1998

G.S. Madalla. `Limited-Dependent and Qualitative Variables in Econometrics`.
    Cambridge, 1983.

W. Greene. `Econometric Analysis`. Prentice Hall, 5th. edition. 2003.

模块参考

具体的模型类包括:

Logit(endog, exog[, offset, check_rank])

Logit 模型

Probit(endog, exog[, offset, check_rank])

概率模型

MNLogit(endog, exog[, check_rank])

多项逻辑回归模型

Poisson(endog, exog[, offset, exposure, ...])

泊松模型

NegativeBinomial(endog, exog[, ...])

负二项模型

NegativeBinomialP(endog, exog[, p, offset, ...])

广义负二项分布(NB-P)模型

GeneralizedPoisson(endog, exog[, p, offset, ...])

广义泊松模型

ZeroInflatedPoisson(endog, exog[, ...])

泊松零膨胀模型

ZeroInflatedNegativeBinomialP(endog, exog[, ...])

零膨胀广义负二项模型

ZeroInflatedGeneralizedPoisson(endog, exog)

零膨胀广义泊松模型

HurdleCountModel(endog, exog[, offset, ...])

计数数据的障碍模型

TruncatedLFNegativeBinomialP(endog, exog[, ...])

用于计数数据的截断广义负二项分布模型

TruncatedLFPoisson(endog, exog[, offset, ...])

用于计数数据的截断泊松模型

ConditionalLogit(endog, exog[, missing])

拟合一个条件逻辑回归模型到分组数据。

ConditionalMNLogit(endog, exog[, missing])

拟合一个条件多项逻辑回归模型到分组数据。

ConditionalPoisson(endog, exog[, missing])

拟合一个条件泊松回归模型到分组数据。

有序因变量的累积链接模型目前位于miscmodels中,因为它继承自GenericLikelihoodModel。这在未来的版本中将会改变。

OrderedModel(endog, exog[, offset, distr])

基于逻辑或正态分布的序数模型

特定的结果类包括:

LogitResults(model, mlefit[, cov_type, ...])

Logit 模型的结果类

ProbitResults(model, mlefit[, cov_type, ...])

Probit 模型的结果类

CountResults(model, mlefit[, cov_type, ...])

用于计数数据的结果类

MultinomialResults(model, mlefit)

用于多项式数据的分类结果类

NegativeBinomialResults(model, mlefit[, ...])

负二项分布1和2的结果类

GeneralizedPoissonResults(model, mlefit[, ...])

广义泊松的结果类

ZeroInflatedPoissonResults(model, mlefit[, ...])

零膨胀泊松的结果类

ZeroInflatedNegativeBinomialResults(model, ...)

零膨胀广义负二项分布的结果类

ZeroInflatedGeneralizedPoissonResults(模型, ...)

零膨胀广义泊松的结果类

HurdleCountResults(model, mlefit, ...[, ...])

Hurdle模型的结果类

TruncatedLFPoissonResults(model, mlefit[, ...])

截断泊松的结果类

TruncatedNegativeBinomialResults(model, mlefit)

截断负二项分布的结果类

ConditionalResults(model, params, ...)

属性:

OrderedResults(模型, mlefit)

OrderedModel 的结果类

DiscreteModel 是所有离散回归模型的超类。估计结果作为 DiscreteResults 子类的一个实例返回。每种类别的模型,二元、计数和多项式,都有自己的中间层模型和结果类。这些中间类主要是为了便于实现由 DiscreteModelDiscreteResults 定义的方法和属性。

DiscreteModel(endog, exog[, check_rank])

离散选择模型的抽象类。

DiscreteResults(model, mlefit[, cov_type, ...])

离散因变量模型的结果类。

BinaryModel(endog, exog[, offset, check_rank])

属性:

BinaryResults(model, mlefit[, cov_type, ...])

用于二进制数据的结果类

CountModel(endog, exog[, offset, exposure, ...])

属性:

MultinomialModel(endog, exog[, offset, ...])

属性:

GenericZeroInflated(endog, exog[, ...])

通用零膨胀模型


Last update: Oct 16, 2024