matlab的cell2mat报错记录

来源:互联网 发布:计算机应用与软件 编辑:程序博客网 时间:2024/06/08 07:12

在使用MATLAB自带的随机森林函数TreeBagger做分类时,它的label格式是放在cell中字符串。由于要提取出数值格式,便使用了cell2mat和str2num组合。

cell2mat要求同一列的cell内的数组列数相同,当label为‘-1’, ‘1’置于2*1的cell时,便出错了。因为‘-1’是两个字符(‘负号’和数值‘1’),‘1’是一个字符,cell2ma调用的cat函数出错。

解决方法一:可以单独将每个cell,如‘-1’调用cell2mat和str2num,转化为数值,再放到数组中。

解决方法二:使用0,1标签,而不是-1,1标签。

所以,使用cell2mat时要注意cell中数值的正负号

0 0
原创粉丝点击