1.Only the first/one number join in to the calculation loop, that not what I would like to get.
- For example,
when 2 class considered (K), there should be 2 responses (N1, N2), 2 means (M1, M2), and 2sd (Sd1, sd2).
Wmean=(N1*M1+N2*M2)/(N1+N2)
Weisd=(N1*sd1+N2*sd2)/(N1+N2-K)
But what I got is
Wmean=(N1*M1)/(N1)
Weisd=(N1*sd1)/(N1-K)
below are my codes, thanks in advance!
rm(list = ls())
library(shiny)
ui = (fluidPage(
sidebarLayout(
sidebarPanel(
numericInput("elemNb",
"No.of Class used", value = 2, min = 1,
max = 100),
uiOutput("myUI0"),
uiOutput("myUI1av"),
uiOutput("myUI1dev")
),
mainPanel(
h4("General Evaluation:Weighted mean"),
verbatimTextOutput("output1"),
h4("General Evaluation:Pooled SD"),
verbatimTextOutput("output2")
)
)
)
)
server = function(input, output) {
output$myUI0=renderUI({
response=""
for (i in 1:input$elemNb){
response=paste0(response,
numericInput(paste0("",i),
inputId = "samplesize1",
label = "No.of responses"))
}
HTML(response)})
output$myUI1av=renderUI({
GEav=""
for (i in 1:input$elemNb){
GEav=paste0(GEav,
numericInput(paste0("",i),
inputId = "Mean1",
label = "General Evaluation:'av.'"))}
HTML(GEav)})
output$myUI1dev=renderUI({
GEdev=""
for (i in 1:input$elemNb){
GEdev=paste0(GEdev,
numericInput(paste0("",i),
inputId = "SD1",
label = "General Evaluation:'dev.'"))}
HTML(GEdev)})
rv <- reactive({
tibble::tibble(
sa_data1<-as.numeric(input$samplesize1),
kc_data<-input$elemNb,
me_data1<-as.numeric(input$Mean1),
sd_data1<-as.numeric(input$SD1),
General_evaluation_Weighted_mean=sum(sa_data1*me_data1)/sum(sa_data1),
General_evaluation_Pooled_SD=(sqrt(sum((sa_data1-1)*sd_data1*sd_data1)))/((sum(sa_data1))-kc_data)
)})
output$output1 <- renderText({rv()$General_evaluation_Weighted_mean[1]})
output$output2 <- renderText({rv()$General_evaluation_Pooled_SD[1]})
}
runApp(list(ui = ui, server = server))