一、问题
1. If using all scalar values, you must pass an index.
2. bson.errors.InvalidDocument: Cannot encode object.
3.documents must have only string keys, key was 0
4.must not contain “.”
5. InvalidDocument: documents must have only string keys等等很多类似的错误。
花了我整整3个小时,整个人都不好了。大家看看就好,搞清楚原理,至于能不能解决就随缘吧,毕竟问题太多,会脱顶,会死脑很多细胞的,会衰老的。
二、问题分析
Mongo需要接受字典格式的数据,支持的数据类型有:
而pandas中独有的float64,int32,datatime等或者不能包含“.”
,在mongoDB中不被支持,所以出现这些类似的错误,归根结底都是数据类型不支持的问题,但是直接将其转化为int,float太麻烦,或者直接转化为json等一些格式后再插入也会出现一些问题如TypeError: 'str' object does not support item assignment
。
三、解决方案
1.字典深拷贝
字典没有深拷贝&