使用rmongodb将mongo objectid转换为字符串

时间:2016-03-22 11:04:40

标签: r mongodb mongodb-query rmongodb

我正在尝试将mongo集合转换为R数据帧。 我正在使用rmongodb包来做同样的事情。 我遇到了数据类型为“ObjectId”的字段的问题(在下面的代码中,列为“_id”),rmongodb似乎没有将它们识别为有效字段,因此将它们从OP数据帧中排除。有没有办法将ObjectId字段批量转换为字符串或提取其值?

query <- list(
mongo.bson.from.JSON('
{
"$project" : {
"_id" :0,
"app_id" : "$_id",
"column_1" : "$mongo_column_1",
#########################

我已经尝试了这些功能:

ObjectId.toString()

ObjectId.valueOf()

但我认为我正在制作一些语法错误,似乎无法在这种情况下找到合适的语法。

P.S。我正在解析整个集合而不是单个记录。

1 个答案:

答案 0 :(得分:4)

今天早上我遇到了同样的问题。尝试使用mongo.oid.to.string功能。

l = mongo.bson.to.list(mongo.cursor.value(cursor))

k <- mongo.oid.to.string(l[["_id"]])
k
"5242aef73edb350519b2bf3f"