how to convert matrix with arrays into vector

1 回表示 (過去 30 日間)
Hossam Mosbah
Hossam Mosbah 2017 年 7 月 17 日
編集済み: James Tursa 2017 年 7 月 17 日
I have this type of matrix
(2,1) 1.1348
(5,1) 0.49237
(1,2) 1.1348
(3,2) 0.65578
(4,2) 0.38773
(5,2) 0.25027
(2,3) 0.65578
(4,3) 0.33932
(2,4) 0.38773
(3,4) 0.33932
(5,4) 0.63002
(7,4) 0.11975
(9,4) 0.053962
So I am trying to get the vectors and use them in my program such as 1.1348, so how to convert the previous vector into regular vector like this
1.1348
0.49237
1.1348
0.65578
0.38773
0.25027
0.65578
0.33932
0.38773
0.33932
0.63002
0.11975
0.053962
  1 件のコメント
Adam
Adam 2017 年 7 月 17 日
I don't understand what your first type of matrix means. Are (2,1) etc the locations of points and the rest are 0s or is it a sparse matrix or some other meaning?

サインインしてコメントする。

採用された回答

James Tursa
James Tursa 2017 年 7 月 17 日
編集済み: James Tursa 2017 年 7 月 17 日
Looks like you are working with a sparse matrix. To get the non-zero values into a column vector you could do this:
S = your sparse matrix
result = full(S(find(S)));
or another way
result = full(S(S~=0));

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by