首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >确定树模型R中特定结果的概率

确定树模型R中特定结果的概率
EN

Stack Overflow用户
提问于 2018-07-28 04:57:58
回答 1查看 102关注 0票数 0

对于我用Y=0 =‘new.data’创建的树模型,在给定方法(X1=4,X2=4,X3=4)的情况下,我如何找到获得泊松结果的概率?具体代码如下:

代码语言:javascript
运行
复制
tree.pois.cp<-rpart(Y ~ X1 + X2 + X3, data = data, method = 'poisson', control = rpart.control(cp = 1.1034e-02))

我使用了下面的代码来做同样的事情,但是使用了我的负二项模型:

代码语言:javascript
运行
复制
pred.y.nb<-predict(nb, newdata = new.data, type = "response")
prob0.nb<-dnbinom(0, mu=pred.y.nb, size=nb$theta)
prob0.nb
#this is my answer for probability of Y=0 given my negative binom model

(请大声回答这个问题,谢谢你的帮助:How to calculate the predicted probability of negative binomial regression model?)

我尝试对我的树模型tree.pois.cp使用相同的代码:

代码语言:javascript
运行
复制
pred.y.pois.cp<-predict(tree.pois.cp, newdata = new.data, type = "response")

但是我得到了这个错误:

代码语言:javascript
运行
复制
Error in match.arg(type) : 'arg' should be one of “vector”, “prob”, “class”, “matrix”

谢谢你的帮忙!

EN

回答 1

Stack Overflow用户

发布于 2018-07-28 07:16:19

请阅读rpart文档。predict rpart object没有type = "response"。您可以尝试以下代码:

代码语言:javascript
运行
复制
data<-data.frame(Y=as.character(rpois(n = 20000,.2)),X1=sample(1:4,20000,replace = T),X2=sample(1:4,20000,replace = T),X3=sample(1:4,20000,replace = T),X4=sample(1:4,20000,replace = T))

tree.pois.cp<-rpart(Y ~ X1 + X2 + X3, data = data, method = 'class')
new.data<- data.frame(Y="0",X1=4,X2=4,X3=4,X4=4)
pred.y.pois<-predict(tree.pois.cp, newdata = new.data, type = "prob")
pred.y.pois
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51565460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档