Info
この質問は閉じられています。 編集または回答するには再度開いてください。
How to get a column vector from a 11x14 matrix?
1 回表示 (過去 30 日間)
古いコメントを表示
So I have an 11x14 matrix 'Q' of values, and I would like to make one column vector 'b' from these values row by row. my code is as follows.
m=0
for i=2:10
for j=2:13
for m=m+1
for m=m+1
b(m)=Q(i,j);
end
end
end
the end result should be a 122x1 matrix but from my loop I end up getting a 217x1 matrix. What can I do to fix this?
0 件のコメント
回答 (1 件)
Geoff Hayes
2016 年 6 月 14 日
zephyr21 - when I run your code, my b is a 1x108 matrix. How do you get a 217x1 and why do you think that the result should be a 122x1? Since your i iterates from 2 through 10 and j iterates from 2 through 13, then b should be 9*12=108 elements.
In your code, I would remove the inner-most for loop and just replace this with
for j=2:13
m = m + 1;
b(m) = Q(i,j);
end
Also, try to avoid using i and j as the names of indexing variables (for your loops) since MATLAB uses both to represent the imaginary number.
And...you may want to look at reshape which can be used (for example) to reshape your matrix into a column vector.
4 件のコメント
この質問は閉じられています。
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!