r - pmml (randomForestModel) 在不同的运行中抛出错误..tree[, 2] 中的错误:维数不正确
问题描述
在尝试构建简单的 RF 回归模型并导出为 PMML 时。我发现数据虽然总是建立模型,但导出为 PMML 并不总是成功的。对于许多运行,它会引发错误。详情如下。
代码
> (model.rf <- randomForest(y~ ., data=updatedDataset,ntree=6))
Call:
randomForest(formula = y~ ., data = updatedDataset, ntree = 6)
Type of random forest: regression
Number of trees: 6
No. of variables tried at each split: 2
Mean of squared residuals: 166.4923
% Var explained: 46.47
> pmml(model.rf)
Now converting tree 1 to PMML
Now converting tree 2 to PMML
Now converting tree 3 to PMML
Now converting tree 4 to PMML
Now converting tree 5 to PMML
Now converting tree 6 to PMML
**Error in tree[, 2] : incorrect number of dimensions**
> (model.rf <- randomForest(y~ ., data=updatedDataset,ntree=5))
Call:
randomForest(formula = y~ ., data = updatedDataset, ntree = 5)
Type of random forest: regression
Number of trees: 5
No. of variables tried at each split: 2
Mean of squared residuals: 132.1672
% Var explained: 57.51
>pmml(model.rf) worked fine.............................................
其他几个人都失败了..没什么特别的..
> (model.rf <- randomForest(y~ ., data=updatedDataset,ntree=8))
Call:
randomForest(formula = y~ ., data = updatedDataset, ntree = 8)
Type of random forest: regression
Number of trees: 8
No. of variables tried at each split: 2
Mean of squared residuals: 191.4946
% Var explained: 38.43
> #model.rf
> pmml(model.rf)
Now converting tree 1 to PMML
Now converting tree 2 to PMML
Now converting tree 3 to PMML
Now converting tree 4 to PMML
Error in tree[, 2] : incorrect number of dimensions
> (model.rf <- randomForest(y~ ., data=updatedDataset,ntree=9))
Call:
randomForest(formula = y~ ., data = updatedDataset, ntree = 9)
Type of random forest: regression
Number of trees: 9
No. of variables tried at each split: 2
Mean of squared residuals: 155.9007
% Var explained: 49.88
> #model.rf
> pmml(model.rf)
Now converting tree 1 to PMML
Now converting tree 2 to PMML
Now converting tree 3 to PMML
Error in tree[, 2] : incorrect number of dimension
这种行为的原因以及如何确保它始终有效是查询。
谢谢 !
解决方案
您是否尝试过使用r2pmml
包导出随机森林模型?
r2pmml(model.rf, "MyRandomForest.pmml")
r2pmml
是成功了,还是失败了?该r2pmml
包比传统pmml
包更智能和更快,因此它可能知道如何正确处理您的模型对象。
推荐阅读
- python-3.x - 具有多个子类的单个 django 数据模型,仅用于方法
- javascript - 当我们使用函数作为构造函数与普通调用时(this)的不同行为
- flutter - 吸气剂“长度”被称为空颤?
- r - 如何覆盖 R 中非泛型函数的实现
- android - 无法以编程方式更改 API 级别 19 的语言环境
- laravel - 无法插入数据透视表
- python-asyncio - 使用 Python aiohttp 时将多个 API 请求合二为一
- c++ - 我可以停止执行其他递归树分支吗?
- html - 有什么方法可以从标题属性中设置特定字母的样式?
- datatables - Laravel 8 Livewire CRUD 操作结果呈现为数据表