我有一个闪亮的应用程序,在Json中获取输入文件通过分类器运行它并返回一个分类的Json对象.我希望应用程序能够与API通信.我希望API将文件发布到Shiny App,它将完成其工作并返回一个分类对象.基本上我希望Shiny应用程序位于后台,直到文件发布然后完成其工作.我知道我可以使用httr包中的GET从url获取文件.我可以把它放在shiny.server文件中,如果我知道get命令的文件名就可以了
但是,来自API的文件名将有所不同.那么有什么方法可以根据来自API的Post请求使这个动态化.
我用R caret训练了一个树模型.我现在正在尝试生成混淆矩阵并继续收到以下错误:
confusionMatrix.default(predictionsTree,testdata $ catgeory)出错:数据和参考因子必须具有相同的级别数
prob <- 0.5 #Specify class split
singleSplit <- createDataPartition(modellingData2$category, p=prob,
times=1, list=FALSE)
cvControl <- trainControl(method="repeatedcv", number=10, repeats=5)
traindata <- modellingData2[singleSplit,]
testdata <- modellingData2[-singleSplit,]
treeFit <- train(traindata$category~., data=traindata,
trControl=cvControl, method="rpart", tuneLength=10)
predictionsTree <- predict(treeFit, testdata)
confusionMatrix(predictionsTree, testdata$catgeory)
Run Code Online (Sandbox Code Playgroud)
生成混淆矩阵时会发生错误.两个对象的级别相同.我无法弄清问题是什么.它们的结构和水平如下.它们应该是一样的.任何帮助将非常感谢,因为它让我破解!
> str(predictionsTree)
Factor w/ 30 levels "16-Merchant Service Charge",..: 28 22 22 22 22 6 6 6 6 6 ...
> str(testdata$category)
Factor w/ 30 levels "16-Merchant Service Charge",..: 30 30 7 7 7 7 7 30 7 …Run Code Online (Sandbox Code Playgroud)