【问题标题】:how to store and retrieve multiple decision trees in matlab如何在matlab中存储和检索多个决策树
【发布时间】:2015-12-03 02:42:09
【问题描述】:

我有一个 for 循环,每次都生成一个决策树,稍后在程序中我需要将所有决策树应用于测试数据(决策树没有组合成一个整体)。我试图将它们存储在结构数组中,但是当我将它们应用于测试数据时,出现以下错误:

(“struct”类型的输入参数的未定义函数“predict”。)。

我知道生成的树是一个对象,但是如何在 MATLAB 中存储和检索多个对象?

【问题讨论】:

标签: matlab object struct classification decision-tree


【解决方案1】:

通常对象数组会做(唯一的事情是类需要一个默认构造函数来分配空间)。

所以,最安全的方法是使用元胞数组。代码大致如下:

%'"N" is the size of your problem'
dtrees = cell(1,N);
for k = 1:N
        %'Create the decision tree "obj"'
        %'...'
        dtrees{k} = obj;
end;

%'...'

%'Later iterate in the cell array'
for k = 1:N
        obj = dtrees{k};
        %'Now do stuff with "obj"'
        %'...'
end;

【讨论】:

  • 感谢 CST-Link 的回答和示例
  • @HannaK 很高兴我能帮上忙。
【解决方案2】:

您使用元胞数组。 http://uk.mathworks.com/help/matlab/matlab_prog/create-a-cell-array.html 他们几乎可以存储任何东西。

【讨论】:

  • 答案的基本部分是:您使用元胞数组。它回答了“如何在 MATLAB 中存储和检索多个对象?”这个问题。链接只是对元胞数组文档的参考,以防她/他在实现中需要它。
猜你喜欢
  • 2014-03-14
  • 1970-01-01
  • 1970-01-01
  • 2018-05-04
  • 2013-05-19
  • 2010-12-29
  • 2019-02-08
  • 2013-12-01
  • 1970-01-01
相关资源
最近更新 更多