繁体   English   中英

文件输入 function 在 r Shiny 中没有响应

[英]fileInput function not responding in r Shiny

我是 R 和 R shiny 的新手,并且一直致力于整合一个统计应用程序,允许用户导入文件,然后运行不同的统计程序。 直到最近,fileData function 对我来说一直运行良好,现在每当我尝试上传文件时,什么都不会打开。 我已经尝试了一切我能想到的让它运行,但似乎该文件不会附加到 function。 任何帮助将不胜感激!

library(shiny)
library(shinyFiles)
library(dplyr)
library(shinythemes)

ui <- fluidPage(theme = shinytheme("cosmo"),
# Application title
titlePanel("Stats"),

# Sidebar
sidebarLayout(
    sidebarPanel(
        tabsetPanel(type = "tab", 
                    tabPanel("SCI",

                        fileInput("file1", "Insert File", multiple = TRUE, accept = c("text/csv", "text/comma-separated-values, text/plain", ".csv")),

                        selectInput("statChoice", "Choose Stats", c("None" = "None", "ANOVA 0 w/in 1 btw" = "A1btw", "ANOVA 0 w/in 2 btw" = "A2btw")),

                            conditionalPanel("statChoice == 'A1btw'",
                                uiOutput("ind1"),
                                uiOutput("dep1")),

                            conditionalPanel("statChoice == 'A2btw'",
                                uiOutput("ind1"),
                                uiOutput("ind2"),
                                uiOutput("dep1")),
            )
        )
    ),

    # Show a plot of the generated distribution
    mainPanel(
       tabsetPanel(type = "tab",
                   tabPanel("Data", 
                            dataTableOutput("fileData")),
                   tabPanel("Summary Statistics"),
                   tabPanel("Graphs"))
    )
    )
)

server <- function(input, output) {
fileData <- eventReactive(input$file1,{
    read.csv(input$file1$dataPath, header = TRUE, sep = ",", dec = ".")
})

output$fileData <- renderDataTable(
    fileData()
)

vars <- reactive({
    names(fileData())
})

output$ind1 <- renderUI({
    selectInput("var1", "Independent 1", choices = vars())
})

output$ind2 <- renderUI({
    selectInput("var2", "Independent 2", choices = vars())
})

output$dep1 <- renderUI({
    selectInput("var3", "Dependent 1", choices = vars())
})
}

shinyApp(ui = ui, server = server)

棘手,因为 Shiny 没有给出任何警告:
如果在 Ui.R 中使用两次相同的“输出”,shiny 应用程序将无法工作

一切看起来都不错,除了uiOutput("dep1")uiOutput("ind1")的双重使用:

conditionalPanel("statChoice == 'A1btw'",
    uiOutput("ind1"),  # Used once
    uiOutput("dep1")), # Used once

conditionalPanel("statChoice == 'A2btw'",
    uiOutput("ind1"),  # Used twice
    uiOutput("ind2"),
    uiOutput("dep1")), # Used twice

您应该只使用一次 output

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM