【发布时间】:2016-04-20 15:05:25
【问题描述】:
我正在尝试构建一个闪亮的应用程序,在不同的选项卡中显示随机森林的输出。在这里,我只为部分依赖图创建一个选项卡来显示我收到的错误。下面是全局、服务器和 ui 文件的代码。
全球.R
library(shiny)
setwd("C:/Users/rcaldwe4/Documents/Monthly Topic/Stackoverflow")
df <- data.frame(x1=sample(1:100,10000,replace=T),
x2=sample(1:100,10000,replace=T),
x3=sample(1:100,10000,replace=T),
y=as.factor(sample(0:1,10000,replace=T)))
train_x <- df[1:5000,-4]
train_y <- df[1:5000,4]
train1 <- data.frame(train_x,y=train_y)
test_x <- df[5001:10000,-4]
test_y <- df[5001:10000,4]
服务器.R
library(shiny)
library(randomForest)
library(AUC)
library(rpart)
library(lift)
#Define server logic required to output Random Forest
shinyServer(function(input,output){
rfInput <- reactive({
randomForest(x=train_x,y=train_y,importance=T,ntree=input$trees,keep.forest = T)
})
output$partDep <- renderPlot({
partialPlot(x=rfInput(), pred.data=train1, x.var=input$select_var, which.class=1)
})
})
ui.R
library(shiny)
shinyUI(
fluidPage(
titlePanel("Random Forest"),
sidebarLayout(
sidebarPanel(
sliderInput("trees",
"Number of trees:",
min=0,
max=1000,
value=100,
step=50),
selectInput("select_var",
label = h4("Select variable for partial dependence plot"),
choices = names(train1)[1:3],
selected = names(train1)[1])
),
mainPanel(
tabsetPanel(
tabPanel("Dependence",
plotOutput("partDep"))
)
)
)
))
用于构建树数的滑块输入工作正常。但是,当我尝试让用户为部分依赖图选择变量时,我得到了这个错误:
Warning: Error in eval: object 'input' not found
我不清楚“输入”有什么问题。我想知道在 partialPlot 函数中使用“输入”是否存在问题。任何建议都会很棒。
【问题讨论】: