2017-09-20 16 views
0

私はまだ輝いているモジュールを理解しようとしています。データフレーム「DF」の変数「VAR」の平均値を印刷するsupossedさデータフレームとカラムがパラメータとして機能しないシンプルなシャイニーモジュール

# MODULE UI 
bsc_test_UI <- function(id) { 
    ns <- NS(id) 
    textOutput(ns("test")) 
} 

# MODULE Server 
bsc_test_OUT <- function(input, output, session, df, var) { 
    output$test <- renderText({ 
    x <- mean(df$var, na.rm=T) 
    t <- paste0(var, "=", x) 
    }) 
} 

# App ui 
ui <- fluidPage(
     bsc_test_UI("test_1"), 
     bsc_test_UI("test_2"), 
     bsc_test_UI("test_3") 
     ) 

# App server 
server <- function(input, output,session){ 
    callModule(bsc_test_OUT, "test_1", mtcars, 'cyl') 
    callModule(bsc_test_OUT, "test_2", mtcars, 'mpg') 
    callModule(bsc_test_OUT, "test_3", iris, 'Sepal.Length') 
} 

# App 
shinyApp(ui, server) 

が、それは動作しません。簡単な例の下には私が動作するようにすることはできません。

これは出力に含まです:

cyl=NA 
mpg=NA 
Sepal.Length=NA 

ノー成功を収めて、quotqtionsなしVAR名を入れてみました。 アイデア

答えて

0

だけdf[,var]df$varを交換し、それが

library(shiny) 
# MODULE UI 
bsc_test_UI <- function(id) { 
    ns <- NS(id) 
    textOutput(ns("test")) 
} 

# MODULE Server 
bsc_test_OUT <- function(input, output, session, df, var) { 
    output$test <- renderText({ 
    x <- mean(df[,var], na.rm=T) 
    t <- paste0(var, "=", x) 
    }) 
} 

# App ui 
ui <- fluidPage(
    bsc_test_UI("test_1"), 
    bsc_test_UI("test_2"), 
    bsc_test_UI("test_3") 
) 

# App server 
server <- function(input, output,session){ 
    callModule(bsc_test_OUT, "test_1", mtcars, 'cyl') 
    callModule(bsc_test_OUT, "test_2", mtcars, 'mpg') 
    callModule(bsc_test_OUT, "test_3", iris, 'Sepal.Length') 
} 

# App 
shinyApp(ui, server) 
の作品
関連する問題