我是Shiny的新手,所以也许我对问题的诊断是错误的。我正在尝试创建一个界面,该界面允许用户递归创建模型,并在更改输入时对其进行更改。为此,我需要提取来自模型初始训练的信息,然后再次进行训练。更具体地说,我想使用一些特定索引并再次对其进行训练,但是每次尝试访问这些数字时,都会出现错误。
我的服务器现在是这样的:
server <- shinyServer(function(input, output, session) {
output$x12 = DT::renderDataTable(dataset[c(6,8)], server = FALSE)
output$y12 = renderPrint(input$x12_rows_selected)
index <- reactive({
index <- input$x12_rows_selected
return(index)
})
modelo <- eventReactive(input$do, {
#Train model using indexes above
return(modelo_svm)
})
pred <- eventReactive(input$do, {
return(predict(modelo(), teste, type = 'prob')
)})
output$novos <- renderDataTable(
dataset[which(pred()$sim > .7),c(6,8)])
subset_data <- eventReactive(input$do, {
dataset[which(pred()$sim <.7 & pred()$sim > .3), c(6,8)]
})
output$novos2 <- renderDataTable({
subset_data()
})
# I want to take this "novos_index" and put it in the index() above.
novos_index <- reactive({
return(which(dataset$`Texto do Comentário` %in% subset_data()$`Texto do Comentário`[input$novos2_rows_selected]))
})
})
我的看法是,我试图从某些信息中获取信息,而当我再次训练模型时,这些信息将消失,这就是问题的根源。有什么想法吗?
我更改了索引部分,并添加了我想包含的变量:
index <- reactive({
index <- input$x12_rows_selected
if(grepl("\\d", novos_index())){ #it checks if there are numbers in the element
index <- append(indices, novos_index())
}
return(index)
})
但是它返回一条错误消息,指出: “重新采样的绩效指标中缺少价值。 错误:C堆栈使用率7969188太接近限制了”