matlab能用矩阵操作就不要用for循环

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wangyang20170901/article/details/82869167

1.MATLAB尽量少用for循环来操作矩阵,多用本身的矩阵操作函数

比如,想将矩阵的第三列通过第二列计算得到,以下两种方式得到的结果一致,但不用for更简洁。

a = 6;
feature_labelnum(:,3) = a * sqrt(feature_labelnum(:,2));%第三列是计算得到的阈值
for i = 1:num_labels_left %第三列是计算得到的阈值
     feature_labelnum(i,3) = a * sqrt(feature_labelnum(i,2));
end

2、MATLAB最好事先申请好需要的矩阵空间,不要在循环时不断拼接矩阵,每次拼接都会重新申请一次空间并执行复制操作,耗费时间。

猜你喜欢

转载自blog.csdn.net/wangyang20170901/article/details/82869167