让我们说我有一个大约10万对字符串的字典,以及一个形状(100k,500)的numpy矩阵。我想将它们保存到同一文件中的磁盘上。
我现在正在做的是使用cPickle转储字典,使用scipy.io.savemat转储矩阵。这样,转储/加载速度非常快。但问题是,由于我使用不同的方法,我获得了2个文件,我想只有一个文件包含我的2个对象。我怎么能这样做?
我可以在同一个文件中使用它们,但是cPickle在大数组上的速度非常慢。
答案 0 :(得分:0)
您可以使用dill
。 dill.dump
访问并使用dump
中的numpy
方法来存储array
或matrix
对象,因此它的存储方式与numpy
或dill.dump
对象相同。如果您直接从dill
对象上的方法执行此操作。你只是joblib
字典。
dill
还能够以压缩格式存储泡菜,但速度较慢。正如评论中所提到的,还有joblib
,它也可以与cloudpickle
相同......但基本上,dill
利用klepto
(这是另一个序列化程序) )或者也可以使用dill
来进行序列化。
如果您有一本庞大的字典,并且不需要同时拥有所有内容......也许更好的选择是dict
,它可以使用高级序列化方法(来自dict
)将dump
存储到磁盘(或数据库)上的多个文件中,在内存中有一个代理numpy
,使您只能获得所需的条目。
所有这些软件包都为标准python和module.exports = function(app){
app.post('/recording', function(req,res){
// update request body
proxy.web(req, res, { target: <<host>>:<<port>>});
}, jsonParser);
}
对象提供了快速统一的FFForever
。