R闪亮:如何在每次按下actionButton时更新反应数据框而不创建新的反应数据框?

2024-02-07

我的闪亮应用程序允许用户使用上传 csv文件输入并存储为反应对象 df_data。然后,我创建了一个 numericInput 供用户输入要从数据框中删除的行号。但是,我收到了一个错误求值嵌套太深:无限递归/选项(表达式=)?.

下面是我的 ui.R 代码。

shinyUI(fluidPage(
  titlePanel("amend data frame"),

  mainPanel(
    fileInput("file", "Upload file"),

    numericInput("Delete", "Delete row:", 1, step = 1),
    actionButton("Go", "Delete!"),

    tableOutput("df_data")
  )
))

下面是我的 server.R 代码。

shinyServer(function(input, output) {
  df_data <- reactive({
    read.csv(input$file$datapath)
  })

  df_data <- eventReactive(
    input$Go,
    df_data()[-input$Delete,]
  )

  output$df_data <- renderTable(df_data())
})

我通过将子集化的数据帧分配给一个名为 df_data2 的新反应数据帧解决了这个问题。但我想让用户能够通过在中输入值来不断删除不同的行删除行并按Go按钮。那么这个解决方案将不起作用,因为我必须分配 df_data3、df_data4 ...并且我无法提前预测用户将按多少次Go button.

我是闪亮的新用户大约两周了,一周以来我一直在寻找有关此问题的解决方案。有人可以帮助我吗?一百万谢谢!!


下面是一个可行的解决方案。我创建了一个reactiveValues存储数据帧。选择文件后,数据框就会被填充。当按下删除按钮时,同一数据帧会删除一行。该表始终输出该数据框对象所持有的任何内容。希望这段代码可以成为一个很好的学习材料

runApp(shinyApp(
ui=(fluidPage(
  titlePanel("amend data frame"),

  mainPanel(
    fileInput("file", "Upload file"),

    numericInput("Delete", "Delete row:", 1, step = 1),
    actionButton("Go", "Delete!"),

    tableOutput("df_data_out")
  )
)),
server = (function(input, output) {
  values <- reactiveValues(df_data = NULL)

  observeEvent(input$file, {
    values$df_data <- read.csv(input$file$datapath)
  })

  observeEvent(input$Go, {
    temp <- values$df_data[-input$Delete, ]
    values$df_data <- temp

  })

  output$df_data_out <- renderTable(values$df_data)
})))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R闪亮:如何在每次按下actionButton时更新反应数据框而不创建新的反应数据框? 的相关文章

  • 如何在 ggplot2 图中有两个源标题? [复制]

    这个问题在这里已经有答案了 我正在尝试在 ggplot2 图中添加第二个标题 与这位经济学家制作此图的方式类似 这是我制作的一个基本图 我知道如何在右下角添加一个标题 但如何在左下角添加另一个标题 ggplot mtcars aes mpg
  • 如何在R中对多个时间序列应用dtw算法?

    Problem 我有不同车辆速度的时间序列 我的最终目标是根据不同车辆在时间上的速度相似性对它们进行聚类 因此 我基本上需要生成一个距离矩阵 其中每个单元格包含一对车辆速度时间序列之间的距离 我想使用动态时间扭曲 dtw 作为距离度量 所以
  • 如何制作 POSIXct 的空向量

    我想制作一个空向量POSIXct这样我就可以放一个POSIXct in it vec lt vector POSIXct 10 vec vec 1 lt 2014 10 27 18 11 36 PDT vec 那是行不通的 有任何想法吗 由
  • rollapply 可以返回矩阵列表吗?

    我想使用滚动窗口生成协方差矩阵 和均值向量 但在我所有的尝试中rollapply堆叠协方差矩阵cov并且耗尽了预先分配的空间 例如 如果我的原始数据有 40 个观察值 那么rollapply不能返回超过 40 行 有什么方法可以让我得到ro
  • 如何在 purrr::map_df 之后使用映射向量添加列

    我使用 mtcars 数据集作为示例来说明我的问题 我对每种气缸类型进行了线性回归 并使用 map df 将所有模型结果放在一起 下面的代码和输出 我想要做的是添加另一列名为 圆柱体 4 4 6 6 8 8 我怎样才能在map df中做到这
  • 连接极线ggplot图中的间隙

    当 ggplot 使用极坐标绘制线图时 它会在最高和最低 x 值之间留下间隙 Dec and Jan如下 而不是缠绕成螺旋状 我怎样才能继续这条线并缩小差距 特别是 我想使用月份作为 x 轴 但在一条循环线上绘制多年的数据 Reprex l
  • 如何查找页面上R图形的字节大小?

    我想监控 R 在各个页面上生成的图形的基本质量 例如每个页面的字节大小 我现在只能对平均页面进行质量保证 请参阅下面的章节 我认为这项任务必须有一些比一般措施更内置的东西 生成 4 页的代码Rplots pdf我想知道此处输出中每个页面的字
  • ggplot2 stat_function,具有针对facet_grid内不同数据子集的计算参数

    我有一个关于如何通过的后续问题fitdistr计算参数为stat function see here https stackoverflow com questions 24949065 multiple stat function on
  • 如何使用 ggvis 标记绘图刻度线

    我正在尝试更改中的刻度标签ggvis阴谋 我的数据点是x c 1 2 3 and y c 1 2 3 但是 以下代码会产生完全没有意义的刻度标签 library dplyr library ggvis data frame x c 1 2
  • 有没有办法在 R Shiny 应用程序加载时自动验证对 GoogleSheets 的访问? Googlesheets4 身份验证问题

    我目前正在使用 R Shiny 应用程序 它利用 googlesheets4 从 GoogleSheet 读取数据 我认识到身份验证对于访问 GoogleSheets 很重要 因此我尝试使用 app R 文件中的以下代码对应用程序进行身份验
  • R - 分割数据帧而不删除 NA 值

    如果我有一个 df letter body part a head b head c NA d NA e left foot 我想将它分成 2 个 dfs 一个只有 body part head 另一个则包含其他所有内容 IE 列表 我可以
  • iGraph + Plotly 创建随机连接

    我正在尝试使用示例代码在这里iGraph网络图在plotly https plot ly r network graphs new to plotly和我自己的鞋拔子data frames而不是使用示例空手道俱乐部数据 当绘制图表时 它似乎
  • 如何使 R barplot 上的列标签变为斜体

    这可能是一个简单的问题 但是如何仅将条形图上的列标签设为斜体 而不是斜体x axis标签 但列标签是专门的 到目前为止我的代码是 bp barplot means names arg c CON TRI ylim c 0 120 ylab
  • R:连接到 Teradata 时 JDBC() 找不到 Java 驱动程序路径

    我正在尝试通过 RStudio 连接到 Teradata 但由于某种原因 JDBC 函数在识别 Java 驱动程序所在的路径时出现问题 请参阅下面的代码 library RODBC library RJDBC library rJava b
  • 绘制 grobs 列表

    披露 我不确定如何为这个问题制作一个可重现的例子 我正在尝试使用以下方法绘制 grobs 列表gridExtra包裹 我有一些代码看起来像这样 Make Graphic Objects for Spec and raw traces for
  • Leaflet R 闪亮:选择和缩放

    我正在开发一个带有闪亮和传单的工具 我希望当客户点击变量时 参见 UI 代码 例如 NE 地图会转到另一个视图 例如纯传单中的这样 L easyButton strong NE strong function zoomTo setView
  • R 代码中的命令行

    首先我要说的是我是编程新手 我希望在 R 脚本中从命令行运行 python 脚本 我正在运行 Windows XP 但也有一台运行 Windows 7 的机器 我可以运行以下代码 在 dos 提示符下不会出现错误 cd C Document
  • 在 R 中使用 MODISTools 函数时,“未找到对象‘rlang_hash’”

    我正在尝试按照以下步骤操作文档 https docs ropensci org MODISTools articles modistools vignette html并使用MODISTools用于下载土地覆盖数据的 R 包 我安装了MOD
  • 测试包的反向依赖关系的最用户友好的方法是什么?

    测试反向依赖是一件痛苦的事情 我发现可用的实现有问题 例如当我跑步时devtools revdep check I see Reverse dependency checks for
  • 在 R 中创建缓冲区和计数点

    I asked 这个问题 https stackoverflow com questions 42498344 create buffer around spatial point data in r and count how many

随机推荐