问题标签 [mongolite]
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 - 将 MongoDB 与 R 结合使用——如何仅将嵌套对象作为数据框进行查询和返回?
我正在使用mongolite
R 的 MongoDB 客户端来维护一个巨大的集合,其中典型的文档如下所示:
在此示例中,文档表示具有某些属性的单个论坛线程,其中包含具有不同属性的帖子数组。
我正在寻找一种方法来获取来自给定线程的所有帖子或匹配某些条件的所有可用线程(文档),例如作者是 John,并将其作为代表单个帖子的对象数组或仅作为数组返回字符串(“你好世界!”)。
因此,在 R 中使用的输出mongolite
将是一个数据帧,例如:
另一个例子是计算一个作者发表的所有帖子并返回这个数字,或者一个包含每个唯一用户的帖子数量的表格。
同样,在 R 中:
我找到了几种方法,但它们都返回整个文档而不是嵌套的子文档或特定值。
你能至少给我指出正确的方向吗?这种方法是否明智?有更好的方法吗?我需要使用这样的数据库,因为数据需要被多个客户端访问。
到目前为止,我选择了一个非常低效的选项,将线程级属性存储在 post 对象中。
r - 如何在 R 中列出 mongodb 集合
我一直在尝试在 R 中的 mongo 数据库中列出集合。我意识到此功能仍在 mongolite 包的待办事项列表中(https://github.com/jeroen/mongolite/issues/86)。似乎有一个包,rmongodb
它起到了作用(Unable to see all collections from a mongodb remote server using mongolite)。但是,它不再是 CRAN 的一部分。
任何人都可以建议一种方法来列出数据库中的所有集合吗?
mongodb 是远程的,所以我想将 mongoshell 与 with 结合使用system()
不是一种选择。至少不是一个简单的。
谢谢
r - 无法将 POST 请求传递给 mongolite 的 Find 查询,它返回 null
上面的代码是我的 R Api 使用管道工完成并使用 POST 方法完成,如果下面的邮递员输入x
并且y
在查找查询中以静态形式给出,则此代码有效
上面的代码是我对 R Api 的输入 这是来自邮递员链接 http://localhost:3000/predict 的输入
这是我的数据库结构。查询无法处理输入数据。
r - R / Mongolite:如何$展开数据框?
我正在使用蒙古石。我的数据集中有一个数组,我想使用 $unwind 对其进行解构。我做了以下事情:
结果:
看到错误消息,我尝试使用以下代码排除具有 NA 值的数据:
结果:
有人可以解释我犯的错误吗?此外,我怎样才能正确展开我的数据框?谢谢!
r - 使用 Rs mongolite 正确(插入?更新?)将数据添加到现有集合
我有以下用 R 编写的函数(我认为)在更新我的 mongo 数据库集合方面做得很差。
我的数据框是非常大的数据框,目前约 100K 行和约 50 列myRdataframe1
。myRdataframe2
每次我的脚本运行时,它:
- 使用 con$find('{}') 将 mongodb 集合拉入 R,保存为数据框
myRdataframe1
- 从作为新行附加到的数据提供程序中抓取新数据
myRdataframe1
- 使用 con$remove() 和 con$insert 将mongodb 集合中的数据完全删除,然后重新插入整个
myRdataframe1
最后一个要点是不确定的,因为我每天在 cronjob 中运行这个 R 脚本,而且每次我完全擦除 mongo db 集合并将 R 数据帧重新插入集合时,我都不喜欢这样。
如果我删除 con$remove() 行,我会收到一条错误消息,指出我有重复的 _id 键。看来我不能简单地使用 con$insert() 追加。
非常感谢您对此的任何想法!
r - R编程中的Mongodb文本搜索
我使用 R 编程创建了一个 MongoDB 文本索引。
我正在尝试在 R 中对以下代码进行 MongoDB 文本搜索。
但是,我得到了一个输出为“0 列和 0 行的数据框”。我该如何做才能正确输出?
r - Mongolite 未将带有列表列的数据框正确插入 Mongo DB
将做一个简短的、可重复的示例来说明我遇到的问题,该示例涉及将数据从 R 插入到 mongo 数据库中。这很有挑战性,因为正如您将看到的,我有一个嵌套的数据列。解决这个问题对我的数据库至关重要,我认为其他人也可能遇到这个问题。
我的数据:
我的上述目标是双重的:
inner.df
向其中添加第 4 列num.vector
inner.df
作为第 6 列添加到中的每一行my.data
...这是我用来执行此操作的代码:
这是我的结果(来自 Robo 3T):
我对此非常接近,但由于某种原因,allmonths
它是一个长度为 1 的数组,而不是它自己的对象。如果allmonths
是一个具有 4 个字段的对象,其值与标记为 [0] 的对象完全相同,那么这会好得多。
有没有人看到我在这里的尝试有什么问题。我确信这是其他人在使用 R 中的嵌套对象时可能遇到的问题!任何帮助都非常感谢!
r - 如何从 R mongolite 包中查询 mongodb 集合字段名称
我想从 R mongolite 返回给定 mongodb 集合的字段名称。
从 mongolite 最新版本(即 1.5+)开始,您可以在 mongodb 上运行原始命令,例如,我可以使用以下命令返回所有集合:
这将返回一个集合列表:
您能否建议我如何使用 run 命令返回给定集合的列名?
谢谢!
r - 使用 Mongolite 连接到 mongoDB 时出错
我在通过 Mongolite 连接到我的 MongoDB 时遇到问题,我不确定这是否是我这边的问题,或者我是否需要使用不同的包来连接到数据库。请记住,我无法更改 MongoDB 服务器运行的软件,而且我是所有这些方面的新手,所以这可能只是我的一个愚蠢的错误。
我已经运行了以下代码:
据我从 Mongolite 教程 ( https://jeroen.github.io/mongolite/ ) 中得知,这是连接数据库的正确语法,但我不是 100% 确定。无论如何,我收到以下错误:
据我所知,这意味着 mongolite 不适用于我的数据库。如果是这种情况,我应该尝试使用其他什么包来连接,或者如果这不是问题,我做错了什么?
提前致谢!