【发布时间】:2016-10-28 05:23:23
【问题描述】:
我有一组使用 inTrees 包从 RF 中提取的决策规则。对于未来的工作,我想使用测试数据来预测规则产生的值。我的问题是如何检查观察的每个元素的规则条件?
Observations:(908*7)
x[,1] X[,2] X[,3] X[,4] X[,5] X[,6] X[,7] TARGET
SUPPORTING DEVICES 10 120 144 553 6 3.85 72.02
OPHTHALMOSCOPE 10 133.81 143 345 7 7.5 191.94
OPHTHALMOSCOPE 10 167.22 280 345 2 1 13.99
Rules & prediction: (428:2)
X[,1] %in% c('MICROSCOPE','OSCILLOSCOPE') & X[,5]>4428.534912 &
X[,5]<=4747.5 & X[,6]<=35.5 pred=3555.085
X[,1] %in% c('COLPOSCOPES','ENDOSCOPE','STROBOSCOPE') &
X[,4]<=159.885038579262 & X[,4]>149.693058265924 & X[,4]<=152.534780178906
& X[,6]<=35.5 & X[,7]<=2.85 pred=23856.56
X[,1] %in% c('COLPOSCOPES','ENDOSCOPE','STROBOSCOPE') & X[,2]<=3.5 &
X[,4]>159.885038579262 & X[,4]>210.163123531761 & X[,6]<=35.5 pred=22.845
我想将每个观察结果与每个规则进行比较,并获得该观察结果满足的每个规则的聚合预测值。最终被用作规则引擎
请帮忙!谢谢。
我用过这个:
Y<- TRCx
for (i in c(1:nrow(Y)))
{
X<- Y[1,]
for(j in c(1:nrow(rules)))
{
if (rules$condition [j]){
p <- mean(rules$pred[j])
}
else{
0
}
}
}
【问题讨论】:
标签: r random-forest rules rule-engine