statsmodels.genmod.generalized_estimating_equations.OrdinalGEE

class statsmodels.genmod.generalized_estimating_equations.OrdinalGEE(endog, exog, groups, time=None, family=None, cov_struct=None, missing='none', offset=None, dep_data=None, constraint=None, **kwargs)[source]

使用GEE的序数响应边际回归模型

使用广义估计方程拟合的边际回归模型。

GEE 可以用于拟合广义线性模型(GLMs),当数据具有分组结构时,观测值在组内可能相关,但在组间不相关。

Parameters:
endogarray_like

内生值的一维数组(即响应、结果、因变量或‘Y’值)。

exogarray_like

外生变量的二维数组(即协变量、预测变量、自变量、回归变量或‘X’值)。一个nobs x k的数组,其中nobs是观测值的数量,k是回归变量的数量。默认情况下不包含截距,应由用户添加。请参阅statsmodels.tools.add_constant

groupsarray_like

长度为 nobs 的一维数组,包含组标签。

timearray_like

一个二维数组的时间(或其他索引)值,用于某些依赖结构中,以定义集群内观测值之间的相似性关系。

familyfamily class instance

唯一支持的分布族是二项分布。默认的Logit链接可以替换为probit(如果需要)。

cov_structCovStruct class instance

默认是独立性。要指定可交换结构,请使用 cov_struct = Exchangeable()。更多信息请参见 statsmodels.genmod.cov_struct.CovStruct。

offsetarray_like

拟合中要包含的偏移量。如果提供,必须是与exog行数相同长度的数组。

dep_dataarray_like

传递给依赖结构的附加数据。

constraint(ndarray, ndarray)

如果提供,约束是一个元组 (L, R),使得模型参数在约束 L * param = R 下进行估计,其中 L 是一个 q x p 矩阵,R 是一个 q 维向量。如果提供了约束,将执行一个得分检验,以比较受约束模型与无约束模型。

update_depbool

如果为真,依赖参数将被优化,否则它们将保持在初始值不变。

weightsarray_like

用于分析的案例权重数组。

missingstr

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

Attributes:
cached_means
endog_names

内生变量的名称。

exog_names

外生变量的名称。

注释

以下组合对 family 和 link 有意义

             + ident log logit probit cloglog pow opow nbinom loglog logc
Gaussian     |   x    x                        x
inv Gaussian |   x    x                        x
binomial     |   x    x    x     x       x     x    x           x      x
Poisson      |   x    x                        x
neg binomial |   x    x                        x          x
gamma        |   x    x                        x

并非所有这些链接函数当前都可用。

Endog 和 exog 是引用,因此如果它们所引用的数据已经是数组并且这些数组发生了变化,endog 和 exog 也会随之变化。

“稳健”协方差类型是标准的“三明治估计量”(例如,Liang和Zeger(1986))。它是这里的默认值,也是大多数其他包中的默认值。“朴素”估计量给出的标准误差较小,但仅在工作的相关结构正确指定时才是正确的。Mancl和DeRouen(《生物统计学》,2001)的“偏差减少”估计量减少了稳健估计量的向下偏差。

这里提供的稳健协方差遵循Liang和Zeger(1986)的方法,并与R的gee实现一致。要获得Stata中报告的稳健标准误差,请乘以sqrt(N / (N - g)),其中N是总样本大小,g是平均组大小。

名义和顺序的GEE模型不应该有截距(无论是隐式的还是显式的)。在公式中使用“0 + ”来抑制截距。

示例

使用GEE拟合一个序数回归模型,采用“全局优势比”依赖性:

>>> import statsmodels.api as sm
>>> gor = sm.cov_struct.GlobalOddsRatio("ordinal")
>>> model = sm.OrdinalGEE(endog, exog, groups, cov_struct=gor)
>>> result = model.fit()
>>> print(result.summary())

使用公式:

>>> import statsmodels.formula.api as smf
>>> model = smf.ordinal_gee("y ~ 0 + x1 + x2", groups, data,
                                cov_struct=gor)
>>> result = model.fit()
>>> print(result.summary())

方法

cluster_list(数组)

返回 数组 分割成与聚类结构相对应的子数组。

compare_score_test(子模型)

对给定的子模型对此模型执行得分检验。

estimate_scale()

估计离散度/尺度。

estimate_tweedie_power(mu[, method, low, high])

Tweedie 特定函数用于估计尺度参数和方差参数。

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

使用广义估计方程(GEE)拟合边际回归模型。

fit_constrained(约束[, start_params])

拟合受线性等式约束的模型

fit_regularized(pen_wt[, scad_param, ...])

GEE 的正则化估计。

from_formula(formula, groups, data[, ...])

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

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

返回预测分布的一个实例。

hessian(params[, scale, observed])

Hessian,对数似然函数的二阶导数

hessian_factor(params[, scale, observed])

计算Hessian的权重

information(params[, scale])

费舍尔信息矩阵。

initialize()

初始化一个广义线性模型。

loglike(params[, scale])

评估广义线性模型的对数似然值。

loglike_mu(mu[, scale])

评估广义线性模型的对数似然值。

mean_deriv(exog, lin_pred)

关于参数的预期内生变量的导数。

mean_deriv_exog(exog, params[, offset_exposure])

预期内生变量对自变量的导数。

predict(params[, exog, exposure, offset, ...])

返回设计矩阵的预测值

qic(params, scale, cov_params[, n_step])

返回准信息准则和准似然值。

score(参数[, 尺度])

得分,对数似然函数的导数

score_factor(params[, scale])

每个观测值的分数权重

score_obs(params[, scale])

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

score_test(params_constrained[, ...])

用于限制条件或遗漏变量的得分检验

setup_ordinal(endog, exog, groups, time, offset)

将序数数据重组为二元指示器,以便可以使用广义估计方程进行分析。

update_cached_means(mean_params)

cached_means 应始终包含组别均值向量的最新计算结果。

属性

cached_means

endog_names

内生变量的名称。

exog_names

外生变量的名称。


Last update: Oct 16, 2024