Converting to a square matrix
이전 댓글 표시
In `MATLAB`, say that we have a matrix with the following dimensions:
[11036,1]
How can we convert that to a square matrix?
Thanks.
채택된 답변
추가 답변 (1개)
Image Analyst
2014년 2월 19일
Since sqrt(11036) is not an integer, are you okay with clipping off some elements?
aNew = a(1:(105*105)); % Extract the proper number of elements.
aNew = reshape(a, [105, 105]); % Make 2D square.
댓글 수: 2
med-sweng
2014년 2월 19일
Image Analyst
2014년 2월 20일
Yes, looks like Jos answered before I could. I'm not sure if you knew in advance that the matrix could not be square when you asked, but if you did, you could have gotten a quicker answer if you had specified whether to clip or pad in your original question. I assumed the clipping option when you evidently wanted the padding option. I guess I could have guessed at both ways but it would be better if you just state all your requirements up front so we don't have to guess.
카테고리
도움말 센터 및 File Exchange에서 Descriptive Statistics에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!