Я создал реактивный объект, который хочу использовать в других частях приложения, но он там не работает, он работает только тогда, когда я вывожу его, используя только «output $ outputid».Например;когда я Pr2()$a
в output$ex
это работало, но использование Pr2()$b
и Pr2()$c
не работало в lm1
, и я так растерялся;
Pr2 <- eventReactive(input$mspec,{
if (is.null(input$mspec)) return()
if (input$mspec==0) return()
if (input$msdata){
df <- Pr()
} else{
df <- Dataset()
}
good2 <- data.frame(df)
a <- data.frame(good2[,input$met2[1]:input$met2[2]])
b <- t(a)
c <- good2[,input$Prognostic]
return(list(a=a,b=b,c=c))
})
output$ex <- renderPrint({
print(Pr2()$c)
})
lm1 <- reactive({
if (is.null(input$mspec)) return()
if (input$mspec==0) return()
if (input$msdata){
df2 <- Pr()
} else{
df2 <- Dataset()
}
if (is.null(df2)) return(NULL)
isolate({
Mdataa=Pr2()$b
if (is.null(Mdataa)) return(NULL)
MetabolicSurv::MSpecificCoxPh(reformulate(Survival=input$Survival,Censor=input$Censor,Reduce=input$Reduce,Select=input$num4,Quantile=input$num5,Prognostic=Pr2()$c,Mdata=Mdataa))
})
})