1
私は、ユーザーがフォーカスを当てる列の数を選択し、各列で一意の値を選択できるインターフェイスを作成しようとしています。Rで2つの動的selectInputを持つ
私は現在、列の値と列の名前が一致しません。それは私が1列だけを選ぶときに機能します。ただし、> 1列の場合は動作しません。 「属性値の選択」は、常に最初の「属性の選択」に優先します。私は彼らに互換性があるようにします。
library(shiny)
ui<-shinyUI(fluidPage(fluidRow(column(width = 4,
numericInput("assets", label = "Choose How Many Attributes to Produce in the Map:", value="1"),
uiOutput("variants"),
uiOutput("variants2")
)
)))
server <-shinyServer(function(input, output, session) {
df<-read.csv("diff_block.csv", stringsAsFactors=FALSE, colClasses="character")
df$X<-NULL
output$variants <- renderUI({
numAssets <- as.integer(input$assets)
lapply(1:(numAssets), function(i) {
list(selectInput ("choose_columns",
"Choose Attribute",
sort(unique(names(df)), decreasing = FALSE),
selected=""))
})
})
output$variants2 <- renderUI({
numAssets <- as.integer(input$assets)
lapply(1:(numAssets), function(j) {
selectInput ("choose_columns2",
"Choose Attribute Value",
sort(unique(df[,input$choose_columns]), decreasing = FALSE),
selected="")
})
})
})
shinyApp(ui, server)
ありがとうございました!これは素晴らしいです:) – eagermathperson
私はドロップダウンで選んだすべての列や属性を印刷する方法はありますか? textOutput?すべての選択肢を組み合わせる方法がわかりません... 出力$ roles22 < - renderUI({ numAssets < - as.integer(入力$ assets) xx <-data.frame() for(1 in: (numAssets)){ X = data.frame(入力[[paste0( "choose_columns"、J)]]) XX <-rbind.fill(XX、X) }タグリスト( ヘルプテキスト(paste0(XX) )) })#end of renderUIわからない... – eagermathperson