使用 rpart 创建我的 CART 后,我继续使用 partykit 包中的 as.party 函数将其转换为派对对象。随后出现错误:
as.party(tree.hunterpb1)
Error in partysplit(varid = which(rownames(obj$split)[j] == names(mf)), :
‘index’ has less than two elements
我只能假设它指的是我从文献中理解的因子变量所做的分区,因为索引适用于因子。我的树看起来像这样:
树.hunterpb1 n = 354
node), split, n, deviance, yval
* denotes terminal node
1) root 354 244402.100 75.45134
2) hr.11a14>=49.2125 19 3378.322 33.44274 *
3) hr.11a14< 49.2125 335 205592.400 77.83391
6) month=April,February,June,March,May 141 58656.390 68.57493 *
7) month=August,December,January,July,November,October,September 194 126062.800 84.56338
14) presion.11a14>=800.925 91 74199.080 81.32755
28) month=January,November,October 16 9747.934 63.13394 *
29) month=August,December,July,September 75 58025.190 85.20885 *
15) presion.11a14< 800.925 103 50069.100 87.42223 *
回溯显示,第一个分区到派对类的转换是正确完成的,但是基于因子变量的第二个分区失败并产生了所述错误。
以前在处理类似数据时不会出现此错误。我只能假设 as.party 函数没有找到索引。任何有关如何解决此问题的建议将不胜感激。