【发布时间】:2016-08-11 11:17:44
【问题描述】:
我正在使用响应函数来同时做两件事:
- 读取上传的csv文件;
- 获取文件名
请看下面的代码:
file_info<-reactive({
filename <- file.choose()
data <- read.csv(filename, skip=1)
file_name <- basename(filename)
})
然而,file_info() 只包含 file_name,这迫使我编写另一个反应函数来上传数据:
Raw<- reactive({
inFile <- input$file1
if (is.null(inFile))
return(NULL)
Raw<-read.csv(inFile$datapath, header=TRUE ,sep=",")
})
我认为应该有另一种有效的方法来做到这一点,提前感谢您的任何建议。
【问题讨论】:
-
在
file_info末尾添加:list(data=data, file_name=file_name)。然后,当您调用file_info()时,您会得到一个包含文件名和数据的列表。 -
如果你真的想要两者兼得,@nicola 的答案就是这样。但是您可以使用
fileInput而不是file.choose。