簡體   English   中英

在 R 中運行我的 Shiny 應用程序時,如何修復錯誤“文件必須是字符串或連接”?

[英]How to fix the error "file must be a character string or connection" when running my Shiny app in R?

一旦要求執行 function 聯合,我的應用程序就會出現問題。 如果我只在 R 上使用 function 沒有問題,當我在我的 shiny 應用程序中使用它時會出現問題。

library(shiny)
library(conjoint)

ui <- fluidPage(
  fileInput('file1', 'Carica il file delle preferenze',
            accept = c("text/csv",
                       "text/comma-separated-values,text/plain",
                       ".csv")),
  fileInput('file2', 'Carica il file del profilo',
            accept = c("text/csv",
                       "text/comma-separated-values,text/plain",
                       ".csv")),
  fileInput('file3', 'Carica il file dei nomi dei livelli',
            accept = c("text/csv",
                       "text/comma-separated-values,text/plain",
                       ".csv")),
  textOutput("TEST")
  
)


server <- function(input, output) {
  
  pref <- reactive({
    req(input$file1)
    read.csv(input$file1$datapatht)
  })
  
  profiles <- reactive({
    req(input$file2)
    read.csv(input$file2$datapatht)
  })
  
  levelnames <- reactive({
    req(input$file3)
    read.csv(input$file3$datapatht)
  })
  

  
  output$TEST<-renderTable({
    Conjoint(y=pref(),x=profiles(),z=levelnames())
    })
}

shinyApp(ui, server)

由於拼寫錯誤,您在問題標題中收到錯誤: datapatht應該是datapath 我還建議簡單地使用accept = ".csv"因為任何.csv文件都必須以該文件結尾。

兩者都在下面實現:

library(shiny)
library(conjoint)

ui <- fluidPage(
  fileInput('file1', 'Carica il file delle preferenze',
            accept = c(".csv")),
  fileInput('file2', 'Carica il file del profilo',
            accept = c( ".csv")),
  fileInput('file3', 'Carica il file dei nomi dei livelli',
            accept = c(".csv")),
  textOutput("TEST")
  
)


server <- function(input, output) {
  
  pref <- reactive({
    req(input$file1)
    read.csv(input$file1$datapath)
  })
  
  profiles <- reactive({
    req(input$file2)
    read.csv(input$file2$datapath)
  })
  
  levelnames <- reactive({
    req(input$file3)
    read.csv(input$file3$datapath)
  })
  

  
  output$TEST<-renderTable({
    Conjoint(y=pref(),x=profiles(),z=levelnames())
    })
}

shinyApp(ui, server)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM