2015-10-23 52 views
0

我要做到以下几点在Matlab:如何设置矢量一行矢量分配?

[nnz_rows, nnz_cols] = find(messages_matrix); 
nnz_matrix_points = [nnz_rows, nnz_cols]; 

我想nnz_matrix_points是包含找到返回指数2xn载体,但我想这样做在同一行。我试图在线搜索,但没有成功。

+0

我没有matlab在这里,但可能像'[x(:,1),x(:,2)] = find(mtx)''? – gregswiss

+1

你为什么想在一条线上做?你在一行而不是两行中获得了什么特别的计算优势?这样做是更可读的恕我直言。 – rayryeng

+0

这似乎工作。但也许有一个更简单的解决方案? – yaron

回答

2
[nnz_matrix_points(1, :) nnz_matrix_points(2, :)] = find(messages_matrix); 

产生2xN矩阵。

[nnz_matrix_points(:, 1) nnz_matrix_points(:, 2)] = find(messages_matrix); 

产生Nx2矩阵。

+0

@rayryeng谢谢你抓住我的错误。 – IKavanagh

+1

没问题:) BTW +1。 – rayryeng