Convert matrix in single column/row vector
1,947 ビュー (過去 30 日間)
古いコメントを表示
Hi, I have to convert a matrix in one column/row vector composed of all the rows of the original matrix. How can I do this? Thanks. For example, to convert [1 2; 3 4] in to [1 2 3 4].
0 件のコメント
採用された回答
Jos (10584)
2017 年 11 月 5 日
Take a look at reshape and transpose
A = [1 2 ; 3 4]
reshape(A,1,[])
transpose(A)
A.'
A(:)
reshape(A.',1,[])
0 件のコメント
その他の回答 (4 件)
M Shujah Islam Sameem
2019 年 1 月 5 日
%%%% Converting Matix to vector
A = [1 2 3; 4 5 6; 7 8 9] % Example matrix
reshape(A,[],1) % convert matrix to column vector
reshape(A,1,[]) % convert matrix to row vector
2 件のコメント
Samaa Yasser
2021 年 4 月 7 日
@M Shujah Islam Sameem excuse me ,, i want to convert image matrix size 256x256 to row vector with length same size can you please help me ?
Rik
2021 年 4 月 7 日
'the same size', do you mean a vector length 256 or 65536? In the latter case, read the answer.
Muhammad Usman
2019 年 12 月 23 日
A = [1 2; 3 4];
B = A(:) % convert the matrix into a column vector
C = A(:)' % convert the matrix into a row matrix
2 件のコメント
Fariha Tabassum
2020 年 4 月 6 日
A = [1 2; 3 4];
B = A';
C = reshape(B,1,[])
ans of C will be [1 2 3 4]
2 件のコメント
Çağatay Murat Yılmaz
2020 年 10 月 4 日
You can convert the following matrix to a vector using the following code.
input matrix:
0 1 0 2 3
4 5 6 7 8
9 10 11 12 13
output vector:
0 1 0 2 3 4 5 6 7 8 9 10 11 12 13
code:
vector=[];
for i=1:size(matrix,1)
vector=[vector matrix(i,:)];
end
2 件のコメント
Rik
2020 年 10 月 4 日
Dynamically growing an array is very inefficient. You should consider transposing the array and using reshape.
Petr Hosek
2024 年 9 月 6 日
Technically possible, but generally the least effective solution in Matlab. I would consider this bad practice.
参考
カテゴリ
Help Center および File Exchange で Matrices and Arrays についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!