2011-09-23 111 views
12

我想從R.如何從R查詢MongoDB?

一個MongoDB的查詢

隨着mongo殼,我會查詢:

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

然而,在R-蒙戈,我還沒有找到如何形容這個查詢。

感謝

+0

你談論rmongodb軟件包 - https://github.com/gerald-lindsly/rmongodb? – neilfws

回答

13

如果您正在使用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) 
8

如果您正在使用RMongo,查詢將是:

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

dbGetQuery()的結果將是一個Data Frame