J48 partykit访问平面列表

时间:2016-01-25 19:19:57

标签: r party

我想访问party对象的平面列表表示中的各个节点。也就是说,我想获得一个节点,它的分裂和孩子以及任何其他属性。我是partykit的新手(刚刚开始探索)所以不确定我做错了什么。

require("partykit")
require("RWeka")
data("PimaIndiansDiabetes", package = "mlbench")
j48 <- J48(diabetes ~ ., data=PimaIndiansDiabetes)
j48_party <- as.party(j48)
j48_party_list <- as.list(j48_party)
j48_party_list[1:3]
## Error: length(i) == 1 & is.numeric(i) is not TRUE

由于

1 个答案:

答案 0 :(得分:2)

partykit中,as.list()个对象只有一个partynode方法,但整个party对象不存在partynode方法。前者仅包含递归列表节点ID,变量ID,拆分等。所有实际变量名称,数据,拟合值等不存储在party中,而是as.list(j48_party)

因此,j48_party实际上并不生成平面列表,而是返回node个对象&#34;按原样#34;因为它在内部是一个列表(包含datafittedtermsas.list(j48_party$node)等。)

因此,只能为nodeapply()生成平面列表,但我想这不会包含您要查找的信息。可能{{1}}将帮助您获得您想要的内容......或者插图中的其他一些示例。