statsmodels.othermod.betareg.BetaModel

class statsmodels.othermod.betareg.BetaModel(endog, exog, exog_precision=None, link=<statsmodels.genmod.families.links.Logit object>, link_precision=<statsmodels.genmod.families.links.Log object>, **kwds)[source]

Beta 回归。

模型由均值和精度参数化。两者都可以通过链接函数依赖于解释变量。

Parameters:
endogarray_like

内生响应变量的1维数组。

exogarray_like

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

exog_precisionarray_like

用于精度的变量的二维数组。

linklink

sm.families.links 中用于均值的任何链接,其范围应在区间 [0, 1] 内。默认是 logit-link。

link_precisionlink

对于精度,sm.families.links 中的任何链接都应在正线上有范围。默认是 log-link。

**kwdsextra keywords

由超类处理的选项关键字。 并非此类中支持所有通用关键字。

Attributes:
endog_names

内生变量的名称。

exog_names

外生变量的名称。

另请参阅

Link Functions

注释

状态: 实验性, 0.13 版本新增。 核心结果已验证, 但 API 可能会更改, 并且缺少一些特定于 Beta 回归的额外结果。

示例

Beta回归,默认使用logit链接函数处理自变量,使用log链接函数处理精度。

>>> mod = BetaModel(endog, exog)
>>> rslt = mod.fit()
>>> print(rslt.summary())

我们也可以指定一个公式和一个特定的结构,并使用identity-link来表示精度。

>>> from sm.families.links import identity
>>> Z = patsy.dmatrix('~ temp', dat, return_type='dataframe')
>>> mod = BetaModel.from_formula('iyield ~ C(batch, Treatment(10)) + temp',
...                              dat, exog_precision=Z,
...                              link_precision=identity())

在比例数据的情况下,我们可能会认为精度取决于测量次数。例如,对于序列数据,精度取决于覆盖某个位点的序列读取数量:

>>> Z = patsy.dmatrix('~ coverage', df)
>>> formula = 'methylation ~ disease + age + gender + coverage'
>>> mod = BetaModel.from_formula(formula, df, Z)
>>> rslt = mod.fit()

方法

expandparams(params)

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

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

通过最大似然法拟合模型。

from_formula(公式, 数据[, ...])

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

get_distribution(params[, exog, exog_precision])

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

get_distribution_params(params[, exog, ...])

返回从模型预测转换的分布参数。

hessian(params[, observed])

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

hessian_factor(params[, observed])

对数似然函数的导数 w.r.t.

information(参数)

模型的费舍尔信息矩阵。

initialize()

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

loglike(params)

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

loglikeobs(params)

Beta回归模型观测值的对数似然值。

nloglike(params)

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

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

预测均值或精度的值

reduceparams(params)

减少参数

score(params)

返回对数似然函数的得分向量。

score_factor(params[, endog])

对数似然函数的导数 w.r.t.

score_hessian_factor(params[, ...])

对数似然函数的导数 w.r.t.

score_obs(params)

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

属性

endog_names

内生变量的名称。

exog_names

外生变量的名称。


Last update: Oct 16, 2024