statsmodels.miscmodels.ordinal_model.OrderedModel

class statsmodels.miscmodels.ordinal_model.OrderedModel(endog, exog, offset=None, distr='probit', **kwds)[source]

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

参数化对应于逻辑情况下的比例优势模型。 该模型假设内生变量是有序的,但标签除了顺序外没有数值解释。

该模型基于一个潜在的线性变量,其中我们仅观察到一个离散化。

y_latent = X beta + u

观察到的变量由区间定义

y = {0 if y_latent <= cut_0

1 如果 cut_0 < y_latent <= cut_1 … K 如果 cut_K < y_latent

观察到 y=k 的概率,条件是解释变量 X,由以下公式给出

prob(y = k | x) = Prob(cut_k < y_latent <= cut_k+1)

= 概率(cut_k - x beta < u <= cut_k+1 - x beta) = F(cut_k+1 - x beta) - F(cut_k - x beta)

其中 F 是 u 的累积分布,可以是正态分布或逻辑分布,但可以设置为任何其他连续分布。我们使用标准化分布以避免识别问题。

Parameters:
endogarray_like

内生或因有序分类变量,具有k个水平。 endog的标签或值将在内部转换为连续的整数,0, 1, 2, … 首选使用有序分类类型的pd.Series,因为它给出了各水平之间的顺序关系。 如果endog不是pandas的分类类型,则类别将按字典顺序排序(通过numpy.unique)。

exogarray_like

外生解释变量。这不应包括截距。 pd.DataFrame 也是可以接受的。 使用公式时请参阅关于常数的注释

offsetarray_like

偏移量被添加到系数等于1的线性预测中。

distrstr ‘probit’ or ‘logit’, or a distribution instance

当前默认值为‘probit’,它使用正态分布,对应于有序Probit模型。假设分布具有scipy.stats分布的主要方法,主要是cdf、pdf和ppf。逆cdf,即ppf,仅用于计算起始值。

Attributes:
endog_names

内生变量的名称。

exog_names

外生变量的名称。

start_params

优化对应的空模型的起始参数。

注释

状态:实验性,核心结果已验证,仍继承自GenericLikelihoodModel,未来版本将有所改变。

OrderedModel 的参数化要求模型中没有常数项,无论是显式的还是隐式的。常数项相当于平移所有阈值,因此不能单独识别。

Patsy的公式规范不允许在没有显式或隐式常数的情况下生成设计矩阵,如果解释变量中包含分类变量(或可能是样条)。作为变通方法,statsmodels移除了显式截距。

因此,在使用公式时,有两种有效的情况可以获得不带截距的设计矩阵:

  • 指定一个没有显式和隐式截距的模型,这在模型中只有数值变量时是可能的。

  • 指定一个带有显式截距的模型,statsmodels 将会移除它。

具有隐式截距的模型将会过度参数化,参数估计将不完全可识别,cov_params将不可逆,标准误差可能包含nans。计算结果将主要由于收敛容差和数值导数导致的数值不精确性所主导。

如果检测到剩余常数,模型将引发ValueError。

方法

cdf(x)

在 x 处求得的累积分布函数。

expandparams(params)

当某些参数固定时,扩展为完整的参数数组

fit([start_params, method, maxiter, ...])

基于似然模型的拟合方法

from_formula(公式, 数据[, 子集, 删除列])

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

hessian(params)

在参数处评估的对数似然函数的Hessian矩阵

hessian_factor(params[, scale, observed])

计算Hessian的权重

information(params)

模型的费舍尔信息矩阵。

initialize()

初始化(可能重新初始化)一个模型实例。

loglike(params)

模型在参数处的对数似然值

loglikeobs(params)

所有观测值的OrderdModel的对数似然值。

nloglike(params)

模型在参数处的负对数似然

pdf(x)

Pdf 在 x 处的评估

predict(params[, exog, offset, which])

每个有序内生变量水平的预测概率。

prob(low, upp)

区间概率。

reduceparams(params)

减少参数

score(params)

在参数处评估的对数似然梯度

score_obs(params, **kwds)

在每个观测值的参数处评估的对数似然函数的雅可比矩阵/梯度。

score_obs_(参数)

得分,每个观测值的对数似然的一阶导数

transform_reverse_threshold_params(params)

从原始阈值或截止值获取转换后的阈值

transform_threshold_params(params)

优化中参数的转换

属性

endog_names

内生变量的名称。

exog_names

外生变量的名称。

start_params

优化对应的空模型的起始参数。


Last update: Oct 16, 2024