我正在尝试将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。我正在解析整个集合而不是单个记录。
答案 0 :(得分:4)
今天早上我遇到了同样的问题。尝试使用mongo.oid.to.string功能。
l = mongo.bson.to.list(mongo.cursor.value(cursor))
k <- mongo.oid.to.string(l[["_id"]])
k
"5242aef73edb350519b2bf3f"