【发布时间】:2016-09-01 02:04:57
【问题描述】:
我试图了解 ctree 如何在所有预测变量中完全缺失的情况下拟合/预测观察结果。例如,
library(partykit)
airq <- subset(airquality, !is.na(Ozone))
airq <- rbind(airq,data.frame(Ozone=rnorm(50),Solar.R=NA,Wind=NA,Temp=NA,Month=NA,Day=NA))
airct <- ctree(Ozone ~ ., data = airq,control = ctree_control(majority = TRUE))
table(tail(predict(airct,type="node"),50))
airq 的最后 50 行缺少所有预测变量,通过阅读文档,我得到的印象是,majority=TRUE 将跟随大多数,这意味着它们都应该进入同一个节点而没有变化一点也不。然而我得到了他们的预测分布。
所以
- 我对@987654324@ 工作原理的理解是否正确?
- ctree 如何拟合/预测没有观察到的预测变量的行?
顺便说一句,我尝试跟踪代码以查看majority 参数的使用方式,并看到partykit:::.cnode 中的#104 行有:
prob <- numeric(0) + 1L:length(prob) %in% which.max(prob)
这对我来说看起来很奇怪,因为结果总是numeric(0)。
【问题讨论】: