我正在尝试普通最小二乘法的示例,代码如下。
import numpy as np
import statsmodels.api as sm
import statsmodels.formula.api as smf
dat = sm.datasets.get_rdataset("Guerry", "HistData").data
results = smf.ols('Lottery ~ Literacy + np.log(Pop1831)', data=dat).fit()
print(results.summary())
Run Code Online (Sandbox Code Playgroud)
但我在下面得到这个错误,示例的来源在网站http://www.statsmodels.org/stable/index.html 我的 statsmodels 版本是 0.9,我只是像第一个朋友所说的那样删除 np,但是我仍然遇到同样的错误,所以它不起作用,我只能尝试这些,请帮助我..... 错误太长,所以我需要把它切成几块
第一部分如下:
AssertionError Traceback (most recent call last)
<ipython-input-6-1d91087b5e15> in <module>()
3 import statsmodels.formula.api as smf
4 dat = sm.datasets.get_rdataset("Guerry", "HistData").data
----> 5 results = smf.ols('Lottery ~ Literacy + log(Pop1831)', data=dat).fit()
6 print(results.summary())
~\Anaconda3\lib\site-packages\statsmodels\base\model.py in from_formula(cls, formula, data, subset, drop_cols, *args, **kwargs)
153
154 tmp = handle_formula_data(data, …Run Code Online (Sandbox Code Playgroud)