Pythonでstatsmodelsによるロジスティック回帰を実施し、pickelでdumpしてモデルを保存したのですが、loadでエラーが発生します。
Windows7のDosプロンプトで実行しています。環境の問題なのかPythonと同時にインストールされたIDLEでは問題なくloadできるんです。ですがIDLEでしかできないとなると、困るので・・・。
保存時のコード
import pandas as pd
import seaborn as sns
titanic = sns.load_dataset('titanic')
titanic.head()
import statsmodels.formula.api as smf
import statsmodels.api as sm
model = smf.glm(formula="survived ~ sex +pclass ", data=titanic, family= sm.families.Binomial() )
res = model.fit() #学習
print(res.summary())
import pickle
# 保存
with open(r"C:\Users\SUSUMU\Documents\09_Python\model.file","wb") as f:
pickle.dump(res,f)mport statsmodels.api as sm
読込時のコード
import pandas as pd
import statsmodels.formula.api as smf
import statsmodels.api as sm
import pickle
# 読込
with open(r"C:\Users\SUSUMU\Documents\09_Python\model.file","rb") as f:
res = pickle.load(f)
エラーメッセージ
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "C:\Users\SUSUMU\AppData\Local\Programs\Python\Python36-32\lib\site-packa
ges\statsmodels\base\data.py", line 104, in setstate
return_type='dataframe')
File "C:\Users\SUSUMU\AppData\Local\Programs\Python\Python36-32\lib\site-packa
ges\patsy\highlevel.py", line 308, in dmatrices
eval_env = EvalEnvironment.capture(eval_env, reference=1)
File "C:\Users\SUSUMU\AppData\Local\Programs\Python\Python36-32\lib\site-packa
ges\patsy\eval.py", line 226, in capture
return cls([frame.f_locals, frame.f_globals],
AttributeError: 'NoneType' object has no attribute 'f_locals'
あなたの回答
tips
プレビュー