我正在尝试使用Rmongo库连接R中的mongodb。但查询函数给我错误。
> chn = mongoDbConnect("marketing_db", host = 'localhost', port = 27017)
> print(dbShowCollections(chn))
character(0)
> results = dbGetQuery(chn, marketing_data, {}, 0, 5)
Error in dbGetQuery(chn, marketing_data, { :
object 'marketing_data' not found
> results = dbGetQuery(chn, "marketing_data", {}, 0, 5)
Error in (function (classes, fdef, mtable) :
unable to find an inherited method for function ‘dbGetQuery’ for signature ‘"RMongo", "character", "NULL", "numeric", "numeric"’
> results = dbGetQuery(chn, "marketing_data", query = {}, skip = 0, limit = 5)
Error in (function (classes, fdef, mtable) :
unable to find an inherited method for function ‘dbGetQuery’ for signature ‘"RMongo", "character", "NULL", "numeric", "numeric"’
其中marketing_db是db,marketing_data是我的mongodb中的集合
以下是mongo console的输出:
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
marketing_db 0.001GB
myblogs 0.000GB
test 0.003GB
> use marketing_db
switched to db marketing_db
> show collections
marketing_data
> db.marketing_data.count()
7414
> db.marketing_data.find().pretty().limit(1)
{
"_id" : ObjectId("5b1d65c6cc6e576297462cdc"),
"custAge" : 55,
"profession" : "admin.",
"marital" : "single"
}
我正在使用R for Windows 3.4.3和MongoDB 3.6.5
请帮助解决此错误。
答案 0 :(得分:0)
尝试将查询json作为字符串传递:
results = dbGetQuery(chn, "marketing_data", "{}", 0, 5)