【发布时间】:2022-11-29 22:07:43
【问题描述】:
我创建了一个闪亮的应用程序,其中包括在地图上显示不同年份的数据。可以选择感兴趣的年份。为此,我使用了以下代码:
server <- function(input, output, session) {
datasetInput <- reactive({
if (input$myear_selected == 2017){
MY17}
else if (input$myear_selected == 2018){
MY18}
else if (input$myear_selected == 2019){
MY19}
else if (input$myear_selected == 2020){
MY20}
else if (input$myear_selected == 2021){
MY21}
else if (input$myear_selected == 2022){
MY22}
})
但是,以后可能会添加未来年份的数据框。因此,我希望自动考虑这些年份。到目前为止,我尝试创建一个包含正确年份的数据框,然后创建一个循环。它看起来像那样,但它不起作用。
reac_matrix <- data.frame(matrix(ncol = 2,nrow = length(data_files)))
for (i in 1:length(data_files)) {
reac_matrix[i,1] <- as.numeric(paste("20", i + 16, sep = ""))
reac_matrix[i,2] <- paste("MY", i + 16, sep = "")
}
server <- function(input, output, session) {
datasetInput <- reactive({
for (i in 1:nrow(reac_matrix)) {
if (input$myear_selected == reac_matrix[i,1]){
get(reac_matrix[i,2])}
}
})
非常感谢您的宝贵帮助!
【问题讨论】: