rpart 和 party 包之间的决策树完全不同
Decision tree completely different between rpart and party package
我想比较CART和CHAID算法,我选择了rpart(cart算法)和party(chaid算法),看看它们之间的区别。
我的数据是关于血压的:
派对功能returns我:
library(party)
# par <- ctree_control(minsplit=20, minbucket=10)
arbre <- ctree(bpress_level ~ ., data = df)
arbre
plot(arbre)
rpart 包 returns 我 :
library(rpart)
fit <- rpart(bpress_level ~ .,
method="class", data=df)
printcp(fit) # display the results
plotcp(fit)
plot(fit, uniform=TRUE,
main="Classification Tree for pressure level")
text(fit, use.n=TRUE, all=TRUE, cex=.8)
我不明白为什么树决定如此不同,这正常吗?
为什么对于派对套餐,算法会忽略烟雾、压力、性别等......
先感谢您。
首先ctree([party])没有使用CHAID算法。它与 CHAID 非常相似,但与 CHAID 不同。仅当数据本质上是分类数据时才能应用 CHAID。
当然,还有许多其他递归分区算法或多或少类似于 CHAID,可以处理混合数据类型。例如,CTree算法(条件推理树)也是基于显着性检验的,在partykit包中的ctree()中可用。
我想比较CART和CHAID算法,我选择了rpart(cart算法)和party(chaid算法),看看它们之间的区别。
我的数据是关于血压的:
派对功能returns我:
library(party)
# par <- ctree_control(minsplit=20, minbucket=10)
arbre <- ctree(bpress_level ~ ., data = df)
arbre
plot(arbre)
rpart 包 returns 我 :
library(rpart)
fit <- rpart(bpress_level ~ .,
method="class", data=df)
printcp(fit) # display the results
plotcp(fit)
plot(fit, uniform=TRUE,
main="Classification Tree for pressure level")
text(fit, use.n=TRUE, all=TRUE, cex=.8)
我不明白为什么树决定如此不同,这正常吗? 为什么对于派对套餐,算法会忽略烟雾、压力、性别等...... 先感谢您。
首先ctree([party])没有使用CHAID算法。它与 CHAID 非常相似,但与 CHAID 不同。仅当数据本质上是分类数据时才能应用 CHAID。
当然,还有许多其他递归分区算法或多或少类似于 CHAID,可以处理混合数据类型。例如,CTree算法(条件推理树)也是基于显着性检验的,在partykit包中的ctree()中可用。