R Shiny - 将 csv 下载到工作目录

2024-04-27

我有一个 Shiny 应用程序,我想在其中完成以下任务:

1)用户按下按钮

2) 数据框导出为 .csv,保存在工作目录(包含 server.R 和 ui.R)中,或者最好保存在下一级目录中。

我希望这种情况自动发生,因为最终我会将其与 checkboxGroupboxInput 连接以循环数据并生成一组经过过滤的 .csv。

这是我目前可以获得的最接近的数据,其中 fileToDownload 代表我的数据框:

ui.R:

downloadButton("rptDownload", "Download Report"),

服务器.R:

output$rptDownload <- downloadHandler(
   filename = function() {
     paste(getwd(), '/rpt/test.csv',sep = '')
   },
   content = function(con) {
     write.csv(fileToDownload, file = file.path(con))
   }
 )

当我从 Chrome 浏览器运行它时,它会下载到 .csv,但它会以我想要的文件路径作为名称的一部分来命名:C--Work-Project_A-Shiny_DB-rpt-test.csv。它将 getwd() 和 /rpt/ 视为名称的一部分,而不是文件路径。它被下载到我的下载文件夹,而不是当前的工作目录。

关于如何改进我的代码有什么建议吗?

请注意,我尝试合并其他线程的一些建议。其中:

Shiny (R):将 selectInput 中的选择下载到本地计算机 https://stackoverflow.com/questions/31390521/shiny-r-download-selection-in-selectinput-to-local-machine

R-Shiny 中的自动多文件下载 https://stackoverflow.com/questions/20862151/automatic-multi-file-download-in-r-shiny

https://groups.google.com/forum/#!topic/shiny-discuss/MaN4-ia6wfk https://groups.google.com/forum/#!topic/shiny-discuss/MaN4-ia6wfk

但这些似乎让我离完成我想做的事情越来越远。感谢您的任何帮助。


我认为你想要的是让用户单击一个按钮并拥有shiny将数据保存到您指定的某个文件夹中。它是否正确?

如果这就是您想要的,那么创建一个按钮,当用户单击该按钮时,只会write.csv(<DF-to-write>, <filename-to-use>)或类似的规定。

无需使用downloadHandler. The downloadHandler函数特定于导出数据:用户单击此按钮,您的应用程序将为他们导出数据。数据出现在您的中的原因Download文件夹,当您以这种方式使用它时,是因为您已将浏览器设置为将所有下载的文件存储到您的Download目录。

如果您愿意,您可以通过一个按钮SaveSelectedData和另一个按钮DownloadSavedData.

  • SaveSelectedData will write.csv您指定的文件夹感兴趣的 df。

  • DownloadSavedData会将数据导出给您的用户(但您无法指定将数据下载到用户系统上的位置 - 这取决于他们的浏览器设置)。

另请记住,在服务器上运行时,您需要确保 Shiny 有权写入您希望其保存文件的文件夹。

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

R Shiny - 将 csv 下载到工作目录 的相关文章

随机推荐

  • glypicon 上的单击事件

    如何将 ng click 事件添加到文本框中的引导字形图标 该事件不会被解雇 h3 How to clear the model on remove icon click h3 div class container div class f
  • 跨源资源共享中 this.withCredentials 属性的问题

    我们正在实现一个基于 AngularJS 的应用程序 该应用程序使用托管在不同域中的 REST Web 服务 以下脚本用于 CORS 它在 Chrome 和 FireFox 上完美运行 在 IE9 和 Safari 中进行身份验证时存在问题
  • 了解 Collection.isEmpty() 和 Collection.size() == 0 之间的区别? [复制]

    这个问题在这里已经有答案了 我读过很多关于两者之间差异的文章isEmpty and size gt 0 用于检查collection是否为空并发现isEmpty 表现超过size 但我无法轻易理解为什么性能isEmpty 即使 isEmpt
  • 主函数抱怨返回非 IO monad

    import Debug Trace main do trace Main function parses and returns 0 return 这会引发错误 app hs 3 1 Couldn t match expected typ
  • 如何在 Docker 容器中运行 Nginx 而不停止?

    我在 Docker 容器上安装了 Nginx 并尝试像这样运行它 docker run i t p 80 80 mydockerimage usr sbin nginx 问题是 Nginx 的工作方式是 初始进程立即生成一个 Nginx 主
  • 使用 wp_read_audio_metadata()

    我正在尝试从 WordPress 中的 mp3 文件获取一些元数据 特别是长度变量 这是我的一些代码 这里没有显示 但我已经包含了 wp admin includes media php 文件 当我查看我的页面时http beta open
  • 如何从函数调用事件处理程序?

    我有一个类 我从中调用一个函数ABC string st 带字符串参数 该函数定义在一个Form class Form1 我有一个列表视图 想要从函数中自动调用列表视图 mouse click 事件 我该如何做到这一点 您不能调用另一个类的
  • python lxml 我如何在项目名称中使用标签?

    我需要使用项目的特殊名称构建 xml 文件 这是我当前的代码 from lxml import etree import lxml from lxml builder import E wp E wp tmp wp title print
  • Array.filter 与 $filter('filter')

    我应该在 Angular 应用程序中使用哪一个 为什么 array filter o gt o name myName or filter filter array name myName true 关键的区别是快捷方式或语法糖由提供 fi
  • 如何将 VBScript 转换为可执行 (EXE) 文件? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我四处寻找转换 VBScript 的信息 vbs 到可执行文件 并意识到大多数可用的工具实际上是将脚本包装在可执行文件中 尝试了一些工
  • 包含多个双引号的 CSV 拆分正则表达式

    我有一个包含文本的 CSV 列数据 每行用双引号分隔 一行中的示例文本类似于此 notice 新行和每行之前的空格是故意的 Lorem ipsum dolor sit amet consectetur adipisicing elit se
  • 我可以在 python 中获得没有 echo 的控制台输入吗?

    我可以在 python 中获取没有 echo 的控制台输入吗 Use getpass http docs python org library getpass html gt gt gt from getpass import getpas
  • Primefaces 中的过滤数据表仅有效一次

    我正在尝试使用 Primefaces 过滤数据表 就像这个例子 http www primefaces org showcase ui datatableFiltering jsf 在网络浏览器中 我输入要过滤的文本 它会工作一次 但是当我
  • Python Asyncio 子进程永远不会完成

    我有一个简单的 python 程序 我用它来测试带有子进程的 asyncio import sys time for x in range 100 print processing s 100 x sys stdout flush prin
  • cmd的字符集

    C Users Kolink gt php r echo C Users Kolink gt echo 正如你所看到的 一个程序输出一个 结果是 但使用echo命令给出所需的字符 并且 我可以配置 PHP 也许是脚本开头的某个命令 来输出正
  • 需要新版本后 Firebase 参考为空

    The new 文档 https firebase google com docs database server start authenticate with admin privileges提供了一种初始化 firebase 的简单方
  • 什么是受污染的对象,我们什么时候应该清除它们?

    什么时候需要对 Ruby 对象进行污染 什么时候应该消除它们的污染 受污染对象的概念如何使 Ruby 脚本在安全模式下运行 任何人都可以详细说明这一点 通过一些代码片段使概念清晰吗 什么是污染 根据定义 用户输入被污染了 例如 string
  • jQuery UI、可拖动、可放置、自动滚动

    我有一组可放置的 li 元素 它接受可拖动的图标 项目列表位于可滚动的 div 元素中 我在这里整理了一个简单的例子 http www nerdydork com demos dragscroll http www nerdydork co
  • 当用另一个图像替换它时,防止悬停时图像闪烁(CSS)

    当我在页面加载后第一次将光标悬停在徽标上时 它开始快速闪烁大约一秒钟 我考虑过使用精灵 但我不想将徽标设置为背景图像 我已经有了一个 这是我的 CSS 代码
  • R Shiny - 将 csv 下载到工作目录

    我有一个 Shiny 应用程序 我想在其中完成以下任务 1 用户按下按钮 2 数据框导出为 csv 保存在工作目录 包含 server R 和 ui R 中 或者最好保存在下一级目录中 我希望这种情况自动发生 因为最终我会将其与 check