python - 如何在python中将mongoDB objectID转换为字符串

标签 python pandas pymongo

我正在从 mongoDB 读取数据到 pandas 数据框..

client = MongoClient('localhost',27017)
db = client.test_insert                     ## name of the database
collection = db.dataset2 

df = pd.DataFrame(list(db.dataset2.find()))

这将是 mongoDB 的 dataset2 集合中的所有文档。然后我将其转换为 pandas 数据框。 接下来我存储最后插入的文档插入的 objectID..

last_inserted_id = df['_id'].tail(1)

然后我只想读入 dataset2 集合中插入的新文档。我正在尝试这样做。

df2 = db.dataset2.find({"_id": {"$gt": ObjectId(last_inserted_id) }})

但它给了我一个错误

TypeError: id must be an instance of (str, unicode, ObjectId), not <class       
'pandas.core.series.Series'>

我将数据帧“_id”列转换为字符串,但它不起作用。给我同样的错误。 怎么做?请帮忙

最佳答案

您是否尝试过对抛出错误的调用进行这种更改?

df2 = db.dataset2.find({"_id": {"$gt": last_inserted_id }})

这似乎就是您想要做的。 last_inserted_id 是要搜索的值; ObjectId 是一个类,不是该 mongo 查找的有效参数。

关于python - 如何在python中将mongoDB objectID转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34149189/

相关文章:

python - 如何将此 DataFrame 转换为按索引值平均得分的 DataFrame?

python : Why is it said that variables that are only referenced are implicitly global?

python - 同一列中的行元素对出现的次数

python - 如何在 Pandas 中拆分列以在第一列中获取空值

numpy - 如何在 Ubuntu 上安装最新版本的 NumPy/Scipy/Matplotlib/IPython/Pandas

mongodb - 如何使用 Mongolab 的 $oid 和 pymongo 查找文档?

python - 如何在 python 中读取定点数

python - 向 celery 中的特定消费者发送消息(通过路由键)

python - 无法使用 Pymongo 连接到 Meteor

python - 皮蒙戈。如何正确过滤以下数据?