我正在使用partykit包中的lmtree函数 我正在寻找一个类似于path.rpart函数的函数,即 一个函数,它在列表中给出从根到所选节点的路径上的拆分。
它想要类似的东西:
set.seed(1)
library(rpart)
x=runif(100);z=runif(100);y=jitter(ifelse(z>.5,2*x,3*x+2),amount=.1);
rp=rpart(x~y)
path.rpart(rp,5)
#node number: 5
#root
#y< 0.8785
#y>=0.4081
使用lmtree:
library(partykit)
tr=lmtree(x~y|z)
#and here I need a function similar to path.rpart
我检查了node_party和get_paths函数,但这不是我需要的。 有没有人建议从lmtree对象中提取这些信息? 非常感谢你的帮助。
答案 0 :(得分:3)
类lmtree
的模型继承自party
,就像ctree()
的输出一样。因此,此处讨论的用于ctree()
输出的SO的相同方法也可以应用于lmtree()
输出。也就是说,您可以使用(仍然未导出的).list.rules.party()
函数:
partykit:::.list.rules.party(tr)
## 2 3
## "z <= 0.495593577856198" "z > 0.495593577856198"
如需进一步调整,请参阅: