簡體   English   中英

用於 selectInput 的 R 閃亮加載 data.frame

[英]R shiny load data.frame for selectInput

我正在嘗試編寫一個加載多個數據框的閃亮應用程序。 我的繪圖的數據框都工作得很好,但是我想用作下拉菜單中選項列表的一個 data.frame 沒有加載。 如果我在 R 會話中單獨加載框架,一切正常,但如果我只運行閃亮的應用程序,選擇器將不會更新。

library(shiny)

ui <- fluidPage(
               #...
               selectInput("mats", "Text",
                           selectors)
               # ...
)

server <- function(input, output){
     # ...
     df1=read.csv("./data/file.csv", sep=";", head=T, stringsAsFactors = F)
     df1$choices=as.character(df1$choices)
     selectors=c("All", df1$choices)
     #...
}

shinyApp(ui = ui, server = server)

我想,我需要服務器功能中的選擇器,所以我將數據框與其他數據框一起加載到那里。 那是正確的地方嗎,我需要做什么才能讓它運行?

最好的事物

您的代碼存在許多問題:

  1. 根據文檔, selectInput choices應該是一個列表。
  2. 如果你想創建一個跨用戶uiserver可用的元素,請考慮閱讀有關 Shiny 中作用域規則的鏈接文章,並在global.R定義你的對象。

關於第一點,如果您打算使用data.frame列作為菜單選擇的基礎,您可以應用以下轉換:

my_new_list <- split(df$id, df$subject)

正如@user3710546我過去問過的類似問題的回答所提供的那樣


邊注

請考慮查看關於在R 中制作可重現示例的討論如果您想使用一些公開可用的數據重做您的示例,那么生成解決方案將很容易。 如果我理解正確的話,你想使用data.frame列作為UI元素的基礎,這本身並不難。

.

暫無
暫無

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

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