error using squeeze function
6 次查看(过去 30 天)
显示 更早的评论
i have values as
A(:,:,1)=
1 3 4
.2 .3 .9
;
;
;
A(:,:,56)=
10 13 9
1 2 20
i need to display as
A=
1 3 4
.2 .3 .9
;
;
10 13 9
1 2 20
i tried squeeze,but did not get exact answer,please help
2 个评论
Jan
2012-3-15
Does "did not get the exact answer" means, that the answer is :_completely_ wrong - or only _partially_ wrong?!
I do not understand the notation with the semicolons. Please post what you try and how you insert the semicolons into the output.
回答(2 个)
Jan
2012-3-15
Perhaps:
reshape(permute(A, [3,1,2]), 4, 3)
?
[EDITED] No, the above is not correct. Better:
reshape(permute(A, [1,3,2]), [], 3)
2 个评论
Walter Roberson
2012-3-15
I think your reshape is wrong there. The original matrix size goes to at least 56 in the third dimension, so you are not going to fit the matrix in to a 4 x 3 .
Walter Roberson
2012-3-15
squeeze() is only for eliminating singular dimensions, such as for transforming a 17 x 1 x 43 array in to a 17 x 43 array.
You do not have any singular dimensions, so squeeze() is not going to help you.
2 个评论
Walter Roberson
2012-3-17
It'd probably take a permute() and reshape() and possibly a transpose after.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Performance and Memory 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!