4

我目前正在使用 RMongo 包将我的数据提取到 R 中。我想指定此时应在我的 R 会话中提取的日期范围

library('RMongo')

#Connect to the database
mongo <- mongoDbConnect('db')

#results from dates. 
result <- dbGetQuery(mongo, 'statsdb', '<query>', 0,200000)

Where my <query> is 
 { "createdAt" : { "$gte" : ISODate("2012-12-01T00:00:00Z"), "$lt" : ISODate("2013-01-01T00:00:00Z")  } }

我收到错误:

Error in .jcall(rmongo.object@javaMongo, "S", "dbGetQuery", collection, : com.mongodb.util.JSONParseException:

我需要用 RMongo 包在 R 中传递 mongodb ISODates 的特定方法吗?

4

1 回答 1

5

我自己花了很多时间来解决这个问题。如果您仍在寻找答案,关键似乎在 MongoDB 扩展 JSON;看

http://docs.mongodb.org/manual/reference/mongodb-extended-json/

对于您的查询,您可以编写

query = "{ createdAt : { $gte : { $date: '2012-12-01T00:00:00Z' }, 
                         $lt : { $date: '2013-01-01T00:00:00Z' } } }"
于 2013-08-30T16:35:43.467 回答