gpt4 book ai didi

mongodb - 将 RShiny 应用程序重新编码为 React 应用程序 - 如何将我的数据获取到我的 React 应用程序

转载 作者:可可西里 更新时间:2023-11-01 10:02:07 29 4
gpt4 key购买 nike

我正在学习我想要/正在尝试制作的与篮球相关的数据可视化 Web 应用程序的全栈开发。考虑到我的技术技能,我有一个关于解决我的数据问题的最佳方法的问题。

几个月前,我使用 R 创建了 following R Shiny App .我的这个应用程序的堆栈/非常不完整的后端是:

  • 我使用 R Shiny 启动应用程序,该应用程序托管在带有 Shiny Server 的 EC2 实例上
  • 在 R 中,我有一个名为 scraper.R 的脚本,它每天(每天一次)从 MySportsFeed 查询数据。 ,一个很棒的运动 API,并将新的每日数据更新为我拥有的 8 个 CSV 文件中的一个。 (我的 Shiny 应用程序中的每个图表都有一个不同的 CSV 文件)
  • 然后,我的 R Shiny 应用程序将 CSV 文件读入 app.R 文件,该文件包含整个应用程序的所有代码。

为了扩展此应用并使其变得更好,我一直在学习全栈 javascript 开发,并且我即将开始将此 Shiny 应用编码为 React 应用。

我目前的挑战/考虑是我应该如何管理我的 React 应用程序中的数据。特别是:

  1. 我的 scraper.R 文件使用 dplyr 和其他 R 库进行大量数据操作。从 MySportsFeed 的 API 提供的表单获取数据,再到我的 Shiny App 所需的表单,我所有的图形和图表,这需要相当多的时间。

  2. 话虽如此,我想继续使用 R 来调用 MySportsFeed API 并格式化数据。我当然想取消 CSV 文件,但这并不容易。 8 个 CSV 文件中的每一个都包含对 MySportsFeed API 的数百次调用的结果。 (对 MySportsFeed 的每次 API 调用可能会给我 1 场 NBA 比赛的数据,而 CSV 文件已经更新了 1000 场 NBA 比赛的数据)。

  3. 我想我想将 (a) 从 CSV 文件读取数据到 R Shiny 应用程序替换为 (b) 使用托管的数据源调用我自己的 API 端点(我可以在 R 或 Javascript 中创建 API 端点,R的水管工很擅长这个)

  4. 我想我想将 (a) 将数据存储在 CSV 文件中替换为 (b) 将数据存储在 mongo 数据库中,这很容易插入到 React 应用程序中。

那么我的问题是:是否有一种直观的方式将以下内容连接在一起:

  • 我的 R 代码(它调用 MySportsFeed API、获取新数据并将该数据处理成图表就绪格式)
  • API(无论是 R plumber API 还是包含我所有数据的 javascript API)
  • mongo 数据库(保存我所有的历史废弃数据)。

提前致谢。

编辑 - 几个月前我发了一个帖子 here在一个 RShiny 应用程序上,我想把它变成一个 React 应用程序。

最佳答案

我认为你应该调查一下OpenCPU - 它开箱即用地为您完成大部分工作(HTTP API 到您的 R 代码),而且它的可扩展性仅为 shiny server pro 成本的一小部分。不过,它需要将您的代码转换为 R 包。

可以通过 mongolite 库连接到 MongoDB,但是除非你出于某种原因需要非结构化数据存储(不确定你抓取的提要是否稳定),否则 SQL 数据库可能更容易处理当数据库性能下降时(我发现在 MongoDB 中调试性能问题更难)。

我无法评论 React,因为我对 JS 几乎一无所知,但显然人们已经将 OpenCPU 与 ReactJS 结合起来:https://github.com/sdeboudt/reactr

关于mongodb - 将 RShiny 应用程序重新编码为 React 应用程序 - 如何将我的数据获取到我的 React 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49343456/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com