我建了randomForest:
library(randomForest)
data(iris)
names(iris)
rF <- randomForest(Species~Sepal.Length+Petal.Width,data=iris)
这是界面:
library(shiny)
ui <- fluidPage(
sliderInput(inputId="Sepal.Length",
label="Sepal.Length",
value=6,min=4.3,max=7.9)
,
sliderInput(inputId="Petal.Width",
label="Petal.Width",
value=1,min=0.1,max=2.5)
,
textOutput(outputId="rfScor")
)
这是服务器:
server <- function(input,output){
#tabelka do predykcji
dt <- reactive({data.frame(Sepal.Length= as.numeric(input$Sepal.Length),
Petal.Width=as.numeric(input$Petal.Width)
)})
output$rfScor <- renderText({predict(rf,dt)})
}
并致电app:
shinyApp(ui=ui, server=server)
我收到错误:
Error in as.data.frame.default: nie można przekształcić klasy ""reactive"" w klasę "data.frame"
Stack trace (innermost first):
86: as.data.frame.default
85: as.data.frame
84: predict.randomForest
83: predict
82: renderText [#8]
81: func
80: origRenderFunc
79: output$rfScor
4: <Anonymous>
3: do.call
2: print.shiny.appobj
1: <Promise>
答案 0 :(得分:0)
错误消息告诉您第一个,尽管您还有另一个隐藏在那里。当您想要reactive
的结果时,您需要将其称为函数 - 在()
后面。rF
。此外,您需要将&#34; F&#34;在output$rfScor
。
将output$rfScor <- renderText({predict(rF, dt() )})
更改为此,它应该可以正常工作
nav{
color: black;
}
nav.navbar-nav{
color:yellow;
}
a{
color: red
}