我有训练数据集,即xtrain,ytrain,xtest和ytest。它们都是numpy数组。我想将它们一起保存到一个文件中,这样我就可以像在mnist.load_data中的keras一样将它们加载到工作区中:
(xtrain, ytrain), (xtest, ytest) = mnist.load_data(filepath)
在python中,有没有办法将我的训练数据集保存到这样一个文件中?或者还有其他任何欣赏方法来保存它们吗?
答案 0 :(得分:2)
答案 1 :(得分:1)
您只需使用numpy.save
即可 np.save('xtrain.npy', xtrain)
或以人类可读的格式
np.savetxt('xtrain.txt', xtrain)
答案 2 :(得分:1)
Pickle是一个很好的方式:
import pickle as pkl
#to save it
with open("train.pkl", "w") as f:
pkl.dump([train_x, train_y], f)
#to load it
with open("train.pkl", "r") as f:
train_x, train_y = pkl.load(f)
如果您的数据集很大,我建议您查看hdf5,如@Lukasz Tracewski所述。
答案 3 :(得分:0)
我发现hickle是一种非常好的方法,可以将它们全部保存在一个字典中:
import hickle as hkl
data = {'xtrain': xtrain, 'xtest': xtest,'ytrain': ytrain,'ytest':ytest}
hkl.dump(data,'data.hkl')