matlab find函数

find函数用来获取向量或矩阵中非0元素的索引

假设X是行向量,则find(X)返回的是一个行向量;X'为列向量,find(X')返回的是一个列向量。

看一个例子:A是一个行向量,B是一个列向量,将B中非0元素的索引添加到A中

A = [1 2 3];

B = [0;0;0;4;5;6];

A = [A, find(B)];

结果出现错误:

Error using horzcat

CAT arguments dimensions are not consistent.

原因:B是一个列向量,find(B)返回的是一个列向量,而A是行向量,无法进行拼接

正确写法是

A = [A, (find(B))'];

 

 

posted @ 2013-06-28 15:15  ChasingSunrise  阅读(444)  评论(0编辑  收藏  举报