How to rearrange 2x5 matrix while keeping the size the same?

5 次查看(过去 30 天)
Hi,
How do I tranpose such that
x = [1, 5, 9, 4, 8; 3, 7, 2, 6, 10] to
x =[1, 3, 5, 7, 9 ; 2, 4, 6, 8, 10]
while keeping the 2x5 matrix? This matrix was returned from a function reading a file consisting of a row-oriented data.
thank you.

采纳的回答

Stephen23
Stephen23 2023-4-28
编辑:Stephen23 2023-4-28
Rather than sorting the data, I suspect that you want something like this:
x = [1, 5, 9, 4, 8; 3, 7, 2, 6, 10]
x = 2×5
1 5 9 4 8 3 7 2 6 10
y = reshape(x,[5,2]).'
y = 2×5
1 3 5 7 9 2 4 6 8 10

更多回答(2 个)

Steven Lord
Steven Lord 2023-4-28
x = [1, 5, 9, 4, 8; 3, 7, 2, 6, 10]
x = 2×5
1 5 9 4 8 3 7 2 6 10
y = reshape(x(:), flip(size(x))).'
y = 2×5
1 3 5 7 9 2 4 6 8 10
For comparison:
expected =[1, 3, 5, 7, 9 ; 2, 4, 6, 8, 10]
expected = 2×5
1 3 5 7 9 2 4 6 8 10

Kevin Holly
Kevin Holly 2023-4-28
x = [1, 5, 9, 4, 8; 3, 7, 2, 6, 10]
x = 2×5
1 5 9 4 8 3 7 2 6 10
x2 = reshape(sort(reshape(x,1,[])),size(x,1),size(x,2))
x2 = 2×5
1 3 5 7 9 2 4 6 8 10

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by