0
我有一个闪亮的应用程序,我希望用户能够上传自己的数据并运行gbm模型。上传的数据库将是所有预测变量和响应变量的数据框。这将要求用户输入响应变量作为被动输入,或从列名称列表中选择它。这里是我到目前为止已经试过:有光泽的应用程序gbm模型公式的反应响应变量
library(shiny)
library(gbm)
ui <- fluidPage(
fluidRow(
column(3,textInput("response","Enter the response variable",value="Petal.Width")),
column(9,verbatimTextOutput("summary"))
)
)
server <- function(input, output, session) {
output$summary <- renderPrint({
model<-gbm(input$response~., data=iris,
distribution="gaussian",
bag.fraction=.5,
n.trees=1000,
interaction.depth=4,
shrinkage=0.01,
n.minobsinnode=10,
verbose=FALSE)
summary(model)
})
}
shinyApp(ui=ui,server=server)
但我得到一个可变长度不同的错误:
Warning: Error in model.frame.default: variable lengths differ (found for 'Sepal.Length')
Stack trace (innermost first):
90: model.frame.default
89: model.frame
88: eval
87: eval
86: gbm
85: renderPrint [D:/Dropbox/PhD/Nitrate Mapping Project/USGS Project/SOPs and Test Data/1SE SOP/gbm_reac_response.R#15]
84: func
83: eval
82: eval
81: withVisible
80: evalVis
79: utils::capture.output
78: paste
77: origRenderFunc
76: output$summary
1: runApp