首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mongolite -聚合方法的正确语法

mongolite -聚合方法的正确语法
EN

Stack Overflow用户
提问于 2015-12-14 16:20:51
回答 1查看 3.1K关注 0票数 2

数据

这里,我使用mongolite将虚拟数据插入到测试mongodb数据库中:

代码语言:javascript
复制
library(mongolite)

## create dummy data
df <- data.frame(id = c(1,2,3,4),
                 region = c("r1", "r1", "r2", "r2"))

> df
  id region
1  1     r1
2  2     r1
3  3     r2
4  4     r2

## insert into database
mong <- mongo(collection = "test", db = "test", url = "mongodb://localhost")
mong$insert(df)

问题

如何使用aggregate方法查找每个区域的记录数?

Mongo查询

此查询在mongo中运行时返回正确的答案。

代码语言:javascript
复制
db.test.aggregate({ $group : { _id : "$region", number_records : { $sum : 1}}})

现在如何将其转换为mongolite的正确语法?

尝试

我以为

代码语言:javascript
复制
mong$aggregate('{ $group : { _id : "$region", number_records : { $sum : 1}}}')

可以做到,但是我得到了一个Error: invalid JSON object错误。

我觉得我忽略了一些很简单的事情!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-19 11:12:11

仔细看看文件(第4页),它会发现我实际上需要每个键/值周围的引号,以及整个查询周围的方括号:

代码语言:javascript
复制
> mong$aggregate('[{ "$group" : 
                      { "_id" : "$region", 
                        "number_records" : { "$sum" : 1}
                      }
                  }]')
 Imported 2 records. Simplifying into dataframe...
  _id number_records
1  r2              2
2  r1              2
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34271799

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档