Hi All, I am not sure if this is a relevant platform to ask but I have tried other more related platforms and haven't had any luck so i thought i would try my luck here. Basically I want to generate a selectInput widget with a conditional under renderUI in Shiny. The number of widgets generated will depend on the number of variables a user selects. Try as I may I have not been able to get this to work and have had no luck in getting any help on other platforms hence why i am asking here on the odd chance someone may be able to share his knowledge and explain what it is I am doing wrong or a workaround that I can apply. Below is the code I have so far (please feel free to criticize the code, I am new to R/programming with no background). Thanks library(shiny) ui= fluidPage( sidebarLayout( sidebarPanel( selectizeInput(inputId= "invar", label= "invar", choices= names(iris), selected= names(iris)[1], multiple=T), uiOutput("invarpdf") ), mainPanel( tableOutput("tab") ) )) server= function(input, output,session) { sorted <- reactive({ data <- iris[ ,c(input$invar)] #print(input$invar) data}) output$invarpdf<-renderUI({ numvar<- length(input$varnames) { selectInput(inputId=paste0("distinvar",input$invar),paste0("Please Select Probability Distribution of ", input$invar), choices = c("Normal","Uniform","Triangular")) conditionalPanel(condition = "input.distinvarpdf=='Normal'", textInput("invarpdfmean","Please Select Input Variable Mean:",0.25), textInput("invarpdfsd","Please Select Input Variable Standard Deviation", 0.02)) conditionalPanel(condition = "input.distinvarpdf=='Uniform'", textInput("invarpdfmin","Please Select Minimum Input Variable Value:",0.18), textInput("invarpdfmax","Please Select Maximum Input Variable Value", 0.3)) conditionalPanel(condition = "input.distinvarpdf=='Triangular'", textInput("invarpdfmin","Please Select Minimum Input Variable Value:",0.18), textInput("invarpdfmax","Please Select Maximum Input Variable Value:", 0.3)) conditionalPanel(condition = "input.distinvarpdf=='Log Normal'", textInput("invarpdfmeanlog","Please Select Mean Log of Input Variable:",0.18), textInput("invarpdfsdlog","Please Select Standard Deviation Log of Input Variable:", 0.3)) }}) output$MonteCarlo <- renderPlot({ set.seed(1) n <- input$sampleSize if(distinvarpdf=="Normal"){ invarpdfVec <- rnorm(n,mean = as.numeric(input$invarpdfmean),sdas.numeric(input$invarpdfsd)) } if(distinvarpdf=="Uniform"){ invarpdfVec <- runif(n,min = as.numeric(input$invarpdfmin),max as.numeric(input$invarpdfmax)) } if(distinvarpdf=="Triangular"){ invarpdfVec <- rltriangle(n,a = as.numeric(input$invarpdfmin),b = as.numeric(input$invarpdfmax)) } if(distinvarpdf=="Log Normal"){ invarpdfVec <- rlnorm(n,meanlog as.numeric(input$invarpdfmeanlog),sdlog as.numeric(input$invarpdfsdlog)) } h<- hist(distinvarpdf, ... [Message clipped] [[alternative HTML version deleted]]