我正在尝试创建一个非常基本的 Web 应用程序,允许用户复制和粘贴 Excel 表格并将其显示在应用程序上。我通常会使用
data <- read.delim('clipboard')
,如果我使用 R 脚本,则使用 paste(data)
。如果我跑步:
ui <- fluidPage(
fileInput("file", "Select a file"),
verbatimTextOutput("text")
)
server <- function(input, output, session) {
output$text <- renderText({
filePath <- input$file$datapath
fileText <- paste(readLines(filePath), collapse = "\n")
fileText
})
}
shinyApp(ui = ui, server = server)
它允许用户上传 csv 文件进行显示,但我如何合并数据导入的“复制和粘贴”方法?有什么建议吗?
使用
clipr
包尝试此选项。您可以从剪贴板读取表格。
library(clipr)
library(shiny)
ui <- fluidPage(
actionButton("read_clip", "Read from clipboard"),
tableOutput("table")
)
server <- function(input, output, session) {
table <- eventReactive(input$read_clip, {
read_clip_tbl()
})
output$table <- renderTable({
req(table())
table()
})
}
shinyApp(ui, server)