【问题标题】:Why do I get NAN for p-values while using statsmodels logit function?为什么我在使用 statsmodels logit 函数时得到 P 值的 NAN?
【发布时间】:2019-04-07 02:58:20
【问题描述】:

My data

我使用 statsmodels 构建逻辑回归如下:

        X = np.copy(train_data)
        X = sm_.add_constant(X)

        model = sm.Logit(train_y, X)

        result = model.fit(method='bfgs', maxiter=10000)

        p_values[i-1, j-1, :] = result.pvalues
        logistic_Coefficients[i-1, j-1, :] = result.params

但我收到以下错误,并且我的 p 值都是 NAN:

C:\Users\maryamr\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\statsmodels\base\model.py:488: HessianInversionWarning: Inverting hessian failed, no bse or cov_params available
  'available', HessianInversionWarning)
C:\Users\maryamr\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\scipy\stats\_distn_infrastructure.py:879: RuntimeWarning: invalid value encountered in greater
  return (self.a < x) & (x < self.b)
C:\Users\maryamr\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\scipy\stats\_distn_infrastructure.py:879: RuntimeWarning: invalid value encountered in less
  return (self.a < x) & (x < self.b)
C:\Users\maryamr\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\scipy\stats\_distn_infrastructure.py:1821: RuntimeWarning: invalid value encountered in less_equal
  cond2 = cond0 & (x <= self.a)

我也在 r 中尝试了 glm,但我没有收到任何错误,并且只有一个功能具有 NAN 系数和 p 值。

【问题讨论】:

  • 看起来像 python 代码。请删除r 标签?

标签: python-3.x statsmodels mlogit


【解决方案1】:

根据您收到的第一个错误(“Inverting Hessian failed”),这是由于 Statsmodels 逻辑模型无法找到对数似然函数的最大值,因此无法为您的数据和依赖集和依赖集找到解决方案您正在使用的自变量。

查看您的数据,您有很多 0 和相同的值,这可能是寻找解决方案的问题。但由于看起来您在 R 中获得了收敛,您可以尝试更改模型的一些 Statsmodels 参数以查看它是否有帮助(或首先尝试找出 R 的 glm 包使用的参数并使用 Statsmodels 复制它们)。

例如,logit.fit 方法允许您选择八种不同的预定义优化方法之一。 'nm' (Nelder-Mead) 被其他人推荐用于此类情况。

您可以在此处找到 Statsmodels Logit 文档:http://www.statsmodels.org/devel/generated/statsmodels.discrete.discrete_model.Logit.fit.html

您也可以在Cross Validated 网站上发布此问题,因为在那里您可能会得到更多回复。

【讨论】:

    猜你喜欢
    • 2019-11-10
    • 2018-10-23
    • 1970-01-01
    • 1970-01-01
    • 2015-10-24
    • 1970-01-01
    • 1970-01-01
    • 2016-09-19
    • 2021-03-21
    相关资源
    最近更新 更多