Matlab Tricks

很多人说Matlab没有C高效,而其实上很多相同功能的数学运算,Matlab比C等语言高效的多。使用Matlab时脑子里要时刻警惕自己避免使用for循环,Matlab的强大就在于矩阵运算,其实很多逻辑矩阵运算就能够完成。(C语言的for循环是很低效的,可能会导致算法效率低下无法求解)。

1. 有时进行矩阵运算时会出现奇异矩阵无法计算,这时需要定位矩阵的全零行:find(sum(abs(A),2)==0)
2. 发现全零后需要删除矩阵的某一行:A(i,:)==[]
3. 把matlab结果保存到文本中:save result.txt p -ascii
4. 把矩阵中的某些元素值为a的全部替换为b:C(C==a)=b
5. 无界面情况下如何绘图并保存:set(gca, ‘UserData’, {‘gscatter’ x y g}); saveas(gca, ['D:/test.fig'])
6. 习惯性在程序开头加上rand(‘state’,1); randn(‘state’,1); 以保证实验结果可以重现。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>