问题标签 [rmongodb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 通过 R 连接时无法在 mongo DB 中查看集合
我使用“rmongodb”包通过R连接mongo DB,连接成功。
如果我检查运行 mongoDB 的主机。
但是从 R
r - 我们如何在 rmongodb 中找到随机数据样本?
我的 mongo 数据库中有 200GB 的数据。我已经使用 rmongodb 将它连接到 R。现在我想将 1000 条随机记录从数据库中放入数据框中进行分析。我怎么做?
我想在 R 中查询,而不是在 MongoDb 中。另外,我不想要一条记录,而是 1000 条记录。
r - MongoDB 和 rmongodb。获取查找的大小而不是返回所有结果
我有一个包含超过 100k 个文档的 MongoDB 集合(这个数字会不断增长)。每个文档都有几个字段是单个值,大约 50 个字段都是长度为 1000 的数组。我正在使用 rmongodb 分析 R 中的结果。
在 rmongodb 中,我使用mongo.find.all()
将查询设置为要搜索的某些条件组合,并将字段设置为要返回的字段的子集。mongo shell 中的等价物类似于:
这将返回结果的 data.frame,我对其进行一些后处理并最终得到一个 data.table。
我想做的是为查询添加一些保护措施。如果查询范围很广,并且返回的字段是许多较大的数组字段,则结果 data.table 可能在几十 GB。这可能是预期的,但我想添加一些标志或错误检查,以免有人不小心尝试一次返回数百 GB。
我知道我可以计算与查询匹配的文档数量(mongo.count
在 rmongodb 中,db.collection.find({...},{...}).count()
在 shell 中)。我还可以获得平均文档大小 ( db.collection.stats().avgObjSize
)。
我不知道该怎么做,也不知道是否可能,是在实际返回查找之前获取查找的大小(以 MB 为单位,而不是数字)。由于我经常只返回字段的子集,因此 count 和 avgObjSize 并不能非常准确地估计结果 data.table 的大小。大小需要同时考虑查询和字段。
有没有这样的命令db.collection.find({},{}).sizeOf()
会返回我的查找(查询,字段)的 MB 大小?我能看到的唯一选项是count()
两者size()
都返回文档的数量。
r - rmongodb - 将两个数据帧组合成一个集合中的一个文档
问题
使用R
and rmongodb
,我如何从两个数据帧创建一个 mongodb 文档,其中第二个将是第一个的数组元素?
数据
我的第一个 data.frame 总是一行。例如
我的第二个 data.frame 总是一行或多行,例如
所需解决方案
我的目标是在一个集合中有一个文档,其结构如下:
我怎样才能做到这一点?
编辑
(删除了我所有的尝试)
感谢 Dmitriy 的回答并向我展示了我需要实现的结构。
因此,我对几种不同的获取解决方案的方法进行了基准测试。
r - 将字段与数组的任何元素匹配的 Mongo 查询
我正在尝试通过 R(rmongodb 包)查询 Mongo Db。我有一个简单的要求:
- 返回字段“email”与向量 usr$email 中的任何电子邮件匹配的记录。我想我已经很接近了,但只是找不到正确的语法来完成它。
我看到了对较早问题(Mongo:如果任何数组位置与单个查询匹配)的回复,并且正在尝试以下内容:
我仍然收到一个错误:
r - 使用 rmongodb 的 windows 上的 utf8 转换问题
我在使用 rmongodb 接收正确的 utf8 字符时遇到问题。
使用 mongo shell 我得到:
在 RStudio 中:
要获取 R 中的数据,我正在使用:
所以元音变音没有得到妥善处理。
非常感谢任何帮助!
r - 使用 rmongodb 时,在 mongoDB 中看不到集合
我在这个线程中遇到了同样的问题:Unable to see collections in mongo DB when connected through R
我已成功连接到 mongoDB。
如果我运行以下代码,我会看到正确的 db.
但是,当我尝试查看集合时,它返回 character(0)
如果我从 shell 连接,我可以看到所有的集合,所以我知道它们存在。
r - 使用 rmongodb 将 R 连接到远程 mongoDB
我正在尝试从 R 远程连接到 mongoDB:连接的凭据代码如下所示。
MongoDB 安装在本地,问题的神秘之处在于使用命令行工具进行连接。调用如下所示:
我也尝试过RMongo
,但也没有用。使用 OSX 和 R 版本 3.2.0。
regex - 使用正则表达式的 Rmongodb 无法按预期工作
我在使用正则表达式从 R(使用 rmongodb 包)查询 mongodb 时遇到问题。下面是我的代码:
但是我从数据库中得到了“res”的空结果。但是,当我直接检查数据库中的正则表达式时,它给了我有效的结果。当我在上面的查询中给出没有正则表达式的关键字名称时(eg: "air filter")
,它工作正常。
我尝试了所有可能的组合,但徒劳无功。
以下是示例文档
注意:我尝试过 json 字符串但不能使用,因为我需要将变量作为输入正则表达式传递,即我使用paste0(component[1], "*$")
where 组件列表包含空气过滤器等术语来创建正则表达式。
你能提供一些指导吗?
谢谢!
mongodb - 使用 mongo.code.create 为 $add 构造数组参数
我有如下 MongoDB 文档:
我正在构建一个聚合管道,它应该包含以下$project
部分:
这适用于 MongoDB shell,但我无法使用rmongodb
. 例如,当包含在我的管道中时,以下内容会给出错误 10(BSON 无效):
我很确定问题与代码 ( new Date(3600000)
) 和/或它包含在数组中有关,而数组又是$add
. 我想我可以用“旧方式”构建 BSON 缓冲区,但我正在寻找的是如何使用mongo.bson.from.list
and/or来做到这一点mongo.bson.from.JSON
。