【问题标题】:How to query MongoDB from R?如何从 R 查询 MongoDB?
【发布时间】:2011-09-23 09:44:56
【问题描述】:

我想从 R 获取 MongoDB 查询。

使用mongo shell,我会查询:

db.user.find({age:{$gt:21}})

但是,在 R-Mongo 中,我还没有找到如何描述这个查询。

谢谢

【问题讨论】:

标签: r mongodb rmongodb rmongo


【解决方案1】:

如果你使用的是 rmongodb(有一个类似的包叫做 Rmongo):

     r <- mongo.find(mongo, "test.user", list(age=list('$gt'=21L)))

BSON 查询对象也可以这样构建:

     buf <- mongo.bson.buffer.create()
     mongo.bson.buffer.start.object(buf, "age")
     mongo.bson.buffer.append(buf, "$gt", 21L)
     mongo.bson.buffer.finish.object(buf)
     query <- mongo.bson.from.buffer(buf)
     r <- mongo.find("mongo", "test.user", query)

【讨论】:

    【解决方案2】:

    如果您使用RMongo,查询将是:

     dbGetQuery(mongo, "user","{'age':{'$gt': 21}}}")
    

    dbGetQuery() 的结果将是 Data Frame

    【讨论】:

      【解决方案3】:

      我还为 pymongo 包的 R 编写了轻接口(python 的官方 API) https://github.com/RockScience/Rpymongo/blob/master/Rpymongo.r 它尽可能地模仿 API 官方页面上的函数和参数 http://api.mongodb.org/python/current/api/pymongo/collection.html

      【讨论】:

        猜你喜欢
        • 2020-11-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-16
        • 2020-04-14
        • 2014-10-05
        • 2019-03-27
        • 1970-01-01
        相关资源
        最近更新 更多