python - 使用 PyMongo 将 Pandas 数据框插入 mongodb

使用 PyMongo 将 pandas DataFrame 插入 mongodb 的最快方法是什么? ?

尝试

db.myCollection.insert(df.to_dict())

报错

InvalidDocument: documents must have only string keys, the key was Timestamp('2013-11-23 13:31:00', tz=None)


 db.myCollection.insert(df.to_json())

报错

TypeError: 'str' object does not support item assignment


 db.myCollection.insert({id: df.to_json()})

报错

InvalidDocument: documents must have only string a keys, key was <built-in function id>


df

<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 150 entries, 2013-11-23 13:31:26 to 2013-11-23 13:24:07
Data columns (total 3 columns):
amount    150  non-null values
price     150  non-null values
tid       150  non-null values
dtypes: float64(2), int64(1)

最佳答案

这里有最快捷的方法。使用 insert_many来自 pymongo 3 的方法和 to_dict 的“记录”参数方法。

db.collection.insert_many(df.to_dict('records'))

https://stackoverflow.com/questions/20167194/

相关文章:

mongodb - 如何将 MongoDB 副本集转换为独立服务器

mongodb - 在MongoDB中将字段乘以值

node.js - 使用 Mongoose (MongoDB) 查询嵌套文档

node.js - 按日期时间字段获取最新的 MongoDB 记录

mongodb - 错误 : No unix socket support on windows c

mongodb - 使用 pyMongo 创建 ISODate

java - 为 MongoDB Java 驱动程序配置日志记录

c# - 如何将 BsonDocument 对象反序列化回类

javascript - Meteor.js 部署到 "example.com"还是 "www.ex

mongodb - 使用 MongoEngine 排序?