关于permimp函数nperm参数取值及cforest/permimp使用示例的咨询
关于permimp参数设置与使用示例的解答
nperm参数选择
对于你的35个变量、800条观测的数据集,优先设置nperm=100:
nperm=10的置换次数过少,会导致变量重要性的估计方差极高,结果稳定性差,尤其你开启了conditional=TRUE(条件置换),更需要足够的置换次数来抵消随机性带来的波动nperm=100是行业常规选择,既能保证结果的可靠性,以你的数据集规模来看,计算量也完全在可接受范围内(和nperm=10相比,计算时间仅为10倍,但结果质量提升显著)。如果后续发现计算耗时过长,可酌情降到50,但不建议低于这个数值。
cforest/permimp使用示例查找
你可以通过以下几种方式获取示例:
- R包官方帮助文档:
- 在R控制台输入
?party::cforest,文档内包含cforest模型拟合、基础变量重要性计算的示例代码 - 输入
?permimp::permimp,文档里有完整的从cforest建模到permimp计算条件变量重要性的流程示例
- 在R控制台输入
- 包内置教程(vignettes):
- 输入
browseVignettes("permimp"),可查看permimp包的专属教程,详细讲解条件变量重要性的原理与实战代码 - 输入
browseVignettes("party"),party包的vignettes包含条件推断森林的各类应用案例
- 输入
你的当前代码
crf <- party::cforest(response ~ ., data = mydata, control = cforest_unbiased(mtry = 3, ntree = 1500)) cf_vi <- permimp::permimp(crf, conditional = TRUE, nperm = 100)
内容的提问来源于stack exchange,提问作者Kate
相关产品推荐
相关产品推荐

