r - 如何在没有用户输入的情况下过滤、选择和交互反应数据框?Shiny、Rmarkdown 和 Flexdashboard
问题描述
几天以来,我在选择或过滤反应性数据框时遇到了问题,所有这些都是在 Rmarkdown、Flexdashboard 和 Shiny 中开发仪表板的背景下。
数据框是以下类型的 Web 服务:
www.somewebpage.com/project1/service.py?parameter1=2020¶meter2=ABC
用户选择参数(parameter1和parameter2)并按下按钮以执行对 Web 服务的调用,返回一个 JSON,我随后将其转换为数据框。
现在我的问题是。
我有一个反应式数据框,它不仅仅是一个数据框,它是一个函数,我如何从反应式数据框中过滤或选择变量,但只在代码中,没有任何用户输入?
下面是我如何创建反应式数据框的示例代码。
myData <- reactive({
input$params # Action Button
serv <- "www.somewebpage.com/project1/service.py?parameter1=2020¶meter2=ABC"
dataURL <- isolate(urltools::param_set(urls = serv, key = "parameter1", value = input$parameter1))
dataURL <- isolate(urltools::param_set(urls = dataURL, key = "parameter2", value = input$parameter2))
resp <- httr::GET(dataURL)
jsonRespText <- httr::content(resp, as = "text")
jsonRespParsed <- httr::content(resp, as="parsed")
df_json <- jsonlite::fromJSON(jsonRespText)
modJson <- jsonRespParsed$Data
dfCol <- modJson %>% bind_rows %>% dplyr::select(var1,
var2, var3, var4, var5, var6, var7, var8)
})
在上面提供的代码中,我展示了如何创建名为"myData"
.
如何从
"myData"
对象中过滤或选择变量?
例如,我只想显示"myData"
数据表中的一些变量:
renderDT({
A <- DT::datatable(data = myData() , extensions = "Buttons",
options = list(
columnDefs = list(list(className = 'dt-center', targets = c(2,3,4))),
pageLength = 10,
searchHighlight = TRUE,
language = list(url = '//cdn.datatables.net/plug-ins/1.10.11/i18n/Spanish.json'),
buttons = list("copy", "print", list(
extend = "collection",
buttons = c("csv","excel","pdf"),
text = "Descargar"
)),
dom = "Bftip"
))
A
})
我得到的是图像中显示的,我只想显示一些变量,而不是全部。
如果您需要我提供更多信息,我会保持警惕。
非常感谢。
已编辑
部分解决!
我仍在研究如何过滤反应性数据框,但要选择,只需指定我在代码中显示的列。
renderDT({
A <- DT::datatable(data = myData()[,c(2,3,4)]) # Selecting columns 2, 3 and 4.
A
})
解决方案
推荐阅读
- rust - 使用 Pest.rs,有没有更好的方法通过包含或导入来组织多个文件中的语法?
- c# - Microsoft.Graph 使用从 Azure Keyvault 获取的图像路径发送邮件
- r - 绘制复杂调查数据中的边际效应('mice'、'mitools'、'svyVGAM'、'survey' 包用于 R)
- flutter - 如何在 Dart 中声明 final 类以防止从它扩展?
- c++ - 读取文件并将数据存储在地图中
> C++98 - python - Django DefaultRouter 和 ViewSets 问题
- mysql - 如何解决 VB.net 中的此类错误?MySql.Data.MySqlClient.MySqlException: '你的 Sql 语法有错误;看说明书……”
- r - 如何从 R 中的数据集计算通货膨胀率和失业率
- javascript - 以 1 x 1 加载 iframe
- python - 任何用于最佳(最精确)字符串匹配的内置 Python 库或函数,如路由表?如果不是,我的代码是最有效的吗?