我想将自定义Python类的多个实例保存到一个文件中。
该类是Loess
,取自执行局部回归的https://github.com/joaofig/pyloess
以下是保存过程的MWE:
import pickle
import numpy as np
from Loess import Loess
xarr = np.linspace(0, 4, 100) * np.pi
yarr = 2*np.sin(xarr) + np.random.rand(len(xarr))
loess = Loess(xarr, yarr)
with open("localised_regression.pkl", "wb") as output:
pickle.dump(loess, output)
现在是检索过程
import pickle
with open("localised_regression.pkl", 'rb') as input_:
localised_regression = pickle.load(input_)
当我在jupyter笔记本上执行此操作时(在一个笔记本上运行第一个代码片段,在另一个笔记本上运行第二个代码片段),它工作得非常好。
从笔记本中转储Loess
的实例并从终端或另一台机器中检索它,它不起作用。
我收到ModuleNotFoundError: No module named 'Loess'
错误消息
我甚至尝试在python会话中导入模块,在那里我尝试检索,但没有任何改变
似乎它只在进行倾倒的同一位置起作用。
我正在使用Python3.7.7和相同的conda环境,用于Pythonshell和jupyter笔记本
我检查了其他答案(如how to save/read class wholly in Python),但没有运气
我已尝试保存到numpy文件,但情况相同。
我也试过用marshal
和json
倾销,但都抱怨过
有人对如何解决这个问题有什么建议吗?多谢各位
目前没有回答
相关问题 更多 >
编程相关推荐