2016-08-08 4 views
0

光沢のあるアプリケーションのデータフレームからselectInputのドロップダウンにデータを挿入しようとしていますが、動作しないようです。ここでは落ちたバージョンです:Shinyのリアクティブセレクトインプットのデータフレーム値を返す

datapr<-data.frame(type=c("Analog", "Digital", "Mixed Signal","Analog"),process=c("Bipolar","CMOS","BiCMOS","Bipolar"),funct=c("BJT","Mux","Mux","Regulator")) 

私が開始するために、そのデータフレーム、私の光沢のあるアプリケーションの呼び出しを持っているので、同じようにそれを使用している場合:

ui.R 

shinyUI({ 
selectInput("type",h4("Type:"),list("Analog","Digital","Mixed Signal")) 
selectInput("process",h4("Process:"),"") 
}) 

server.R 

shinyServer(function(input,output,session){ 
observe({updateSelectInput(session,"process",choices=datapr$process[datapr$type==input$type]) 
}) 

は、私が出てきてることである代わりに、実際のデータフレームのエントリの数をして使用するように見えることはできませんunname()、unique()、factor()、as.list()、または次のようにエントリを抜くための単純なものです。これは、SelectizeInputの開始が追加される前に動作していました。どんな助けでも大歓迎です。

答えて

2

これは私の仕事:

ui.R

library(shiny) 


    shinyUI(fluidPage(

      selectInput("type",h4("Type:"),list("Analog","Digital","Mixed Signal")), 
      selectInput("process",h4("Process:"),"") 


    )) 

server.R

library(shiny) 
    datapr<-data.frame(type=c("Analog", "Digital", "Mixed Signal","Analog"), 
         process=c("Bipolar","CMOS","BiCMOS","Bipolar"), 
         funct=c("BJT","Mux","Mux","Regulator")) 
    shinyServer(function(input,output,session){ 
      observe({ 
        updateSelectInput(session,"process", 
             choices=as.character(datapr$process[datapr$type==input$type])) 
      }) 
    }) 
+0

はどうもありがとうございました。私が問題を抱えている簡単な修正。 – mjcampy

関連する問題