在python中,我将数据作为x和y变量存储为一个列表。如何将其导入python以运行statsmodels。在
from __future__ import print_function
import statsmodels.api as sm
import statsmodels.formula.api as smf
import pandas as pd
x = [1,1,2,3]
y=[1,0,0,0]
data = pd.DataFrame(x,y) #to merge the two side by side
star98 = sm.datasets.star98.load_pandas().data
formula = 'x ~ y'
pd.options.mode.chained_assignment = None # default='warn'
mod1 = smf.glm(formula=formula, data=data, family=sm.families.Binomial()).fit()
x = mod1.summary()
ValueError:对偏差函数的第一个猜测返回了一个nan。这可能是一个边界问题,应该报告
你有几个小问题。首先,您构建数据的方式,
y
实际上被解释为数据帧的索引:相反,您必须将两者作为列传递,并确保它们获得列名;使用字典可能更容易:
^{pr2}$其次,你的公式是错误的(因为我猜你是想从
x
中的数据对y
进行分类),它应该是如果你把它和你的代码放在一起,你会得到更好的结果。在
希望有帮助。在
相关问题 更多 >
编程相关推荐