数据格式:pymongo数组插入
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据格式:pymongo数组插入相关的知识,希望对你有一定的参考价值。
我有一个想要存放在mongodb中的物体。使用PyMongo。
python中的对象结构:
obj = {
field1: arrayOfArrays,
field2: array
}
Mongo插入:
mongo.db.vectorPoints.insert_one(obj)
结构arrayOfArrays:
[
array([0.04234, -0.23523, 0,234....]),
array([0.04234, -0.23523, 0,234....]), ...
]
结构数组:
[0.04234, -0.23523, 0,234....]
Mongo insert_one引发有关数据格式的错误:
bson.errors.InvalidDocument: Cannot encode object: array([0.04234, -0.23523, 0,234....
如何格式化'arrayOfArrays'和'array'以便允许'obj'插入mongo?
感谢您提供的任何建议。
答案
您需要将array
转换为python builtin list
类型:
obj_to_insert = {
'field1': [list(arr) for arr in obj['field1']],
'field2': list(obj['field2'])
}
以上是关于数据格式:pymongo数组插入的主要内容,如果未能解决你的问题,请参考以下文章
将 Null 项插入集合 Mongodb (Pymongo)
100天精通Python(进阶篇)——第40天:pymongo操作MongoDB数据库基础+代码实战