- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
以下代码应运行 MNLogit 模型并返回置信区间。它成功返回摘要,您可以在那里看到置信区间,但是当尝试通过 conf_int() 返回置信区间时,我得到一个 ValueError:必须通过二维输入。
import pandas as pd
import statsmodels.api as sm
tmp = pd.read_csv('http://surveyanalysis.org/images/8/82/TrickedLogitMaxDiffExample.csv')
model = sm.MNLogit.from_formula('Choice ~ 1+B+C+D+E+F', tmp, missing='drop')
res = model.fit(method='ncg')
print(res.summary())
res.conf_int()
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-255-a332500964e4> in <module>()
6 res = model.fit(method='ncg')
7 print(res.summary())
----> 8 res.conf_int()
~/anaconda/lib/python3.6/site-packages/statsmodels/base/wrapper.py in wrapper(self, *args, **kwargs)
93 obj = data.wrap_output(func(results, *args, **kwargs), how[0], how[1:])
94 elif how:
---> 95 obj = data.wrap_output(func(results, *args, **kwargs), how)
96 return obj
97
~/anaconda/lib/python3.6/site-packages/statsmodels/base/data.py in wrap_output(self, obj, how, names)
405 def wrap_output(self, obj, how='columns', names=None):
406 if how == 'columns':
--> 407 return self.attach_columns(obj)
408 elif how == 'rows':
409 return self.attach_rows(obj)
~/anaconda/lib/python3.6/site-packages/statsmodels/base/data.py in attach_columns(self, result)
522 return Series(result, index=self.param_names)
523 else: # for e.g., confidence intervals
--> 524 return DataFrame(result, index=self.param_names)
525
526 def attach_columns_eq(self, result):
~/anaconda/lib/python3.6/site-packages/pandas/core/frame.py in __init__(self, data, index, columns, dtype, copy)
304 else:
305 mgr = self._init_ndarray(data, index, columns, dtype=dtype,
--> 306 copy=copy)
307 elif isinstance(data, (list, types.GeneratorType)):
308 if isinstance(data, types.GeneratorType):
~/anaconda/lib/python3.6/site-packages/pandas/core/frame.py in _init_ndarray(self, values, index, columns, dtype, copy)
461 # by definition an array here
462 # the dtypes will be coerced to a single dtype
--> 463 values = _prep_ndarray(values, copy=copy)
464
465 if dtype is not None:
~/anaconda/lib/python3.6/site-packages/pandas/core/frame.py in _prep_ndarray(values, copy)
5686 return arrays, arr_columns
5687
-> 5688
5689 def _list_to_arrays(data, columns, coerce_float=False, dtype=None):
5690 if len(data) > 0 and isinstance(data[0], tuple):
ValueError: Must pass 2-d input
最佳答案
这是一个已修复的错误,显然将在里程碑 0.10 中修复:https://github.com/statsmodels/statsmodels/issues/3651#issuecomment-300511723
但是,有一个变通办法。您可以从结果对象中获取置信区间的数组版本:
res = model.fit(method='ncg')
res._results.conf_int()
这并不完全出色,因为您看不到哪个 CI 属于哪个。但是,如果将其与 res.summary() 报告进行比较,您会发现 CI 的顺序相同,这很有帮助。
感谢 josef-pkt:https://github.com/statsmodels/statsmodels/issues/3883
关于python - 值错误 : Must pass 2-d input when trying to return statsmodels MNLogit confidence intervals,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44593718/
我在 python 中使用 statsmodels 的回归模型可处理 48,065 行数据,但在添加新数据时,我追踪到了一行产生奇异矩阵错误的代码。类似问题的答案似乎表明缺少数据,但我已经检查过,并且
我正在运行一个 mnlogit 回归,我想做一些预测。我的数据位于名为 state 的 pandas DataFrame 上,其中包含两列 age 和 final_state(以及其他列)。 impo
我有一个如下所示的数据框: 我已经应用了逻辑回归,我想在另一个数据框中获得 p 分数和 t 值 Algorithm Success A 0.
我有关于 mnlogit 的问题R 中的包,我会在 StackOverflow 上询问它,因为它与特定的语言和库有关,但是如果有人决定将它移动到交叉验证,我不会生气(这是一个艰难的选择哪个 Stack
我正尝试在著名的 iris 数据集上使用 statsmodels 的 MNLogit 函数。当我尝试拟合模型时,我得到:“当前函数值:nan”。这是我正在使用的代码: import statsmode
以下代码应运行 MNLogit 模型并返回置信区间。它成功返回摘要,您可以在那里看到置信区间,但是当尝试通过 conf_int() 返回置信区间时,我得到一个 ValueError:必须通过二维输入。
我是一名优秀的程序员,十分优秀!