这个问题是:“ImportError: No module named multiarray”。
这个问题是这样出现的,我在做一个比赛的时候,需要抽一个特征,这个特征的计算比较复杂,需要的时间比较长。于是我就在我的实验室台式机(WIN7 64位)上来跑,最后得到一个用numpy列向量存储的向量。
于是我直接用pickle存储这个变量,之后拷贝到我的电脑(ubuntu)上,再次用pickle.load导入。
听上去毫无问题。但是出现了这个错误:“ImportError: No module named multiarray”
变量本身是用numpy.array格式存储的,不涉及multiarray的情况。
但是我还是一开始在我的程序中添加各种方式来导入multiarray。
类似于:
from numpy import multiarray
import numpy.core.multiarry
from numpy import *
这些都试过了,但是不起作用。于是我又在我台式机上正常导入,没有问题。
最后去查了下,应该是这样系统不一样的环境导致了编码出现了一点点不一样。
所以,在台式机上pickle.dump的时候,需要 open(‘xxxxxxx.np’,’wb’) 而不是 open(‘xxxxxxx.np’,’w’)
然后就解决了问题。