How to extract columns of a matrix using a for loop?
8 views (last 30 days)
Show older comments
Hi Everyone,
I have a 3x6 matrix and trying to extract 1st and 3rd, 2nd and 5th, 3rd and 6th column using a loop. The matrix is:
polygon_nf =
0.0185 0.0192 0.0207 0.0185 0.0192 0.0207
0.0241 0.0236 0.0239 0.0241 0.0236 0.0239
0.0185 0.0192 0.0207 0.0241 0.0236 0.0239
The loop I have so far is:
for i=1:3
x_nf=polygon_nf(:,i);
y_nf=polygon_nf(:,i+3);
end
When I try to display x_nf and y_nf values from within the loop I get 6 columns that I want, however, when I display the results after the loop has finished, I only get 2 columns. And when I try to put x_nf(i) and y_nf(i) instead of x_nf and y_nf inside the loop, I get an error saying:
In an assignment A(I) = B, the number of elements in B and I must be the same.
Any help on this issue would be highly appreciated.
0 Comments
Accepted Answer
Star Strider
on 28 Apr 2016
You need to subscript the left-side variables in your assignments as well:
for i=1:3
x_nf(:,i)=polygon_nf(:,i);
y_nf(:,i)=polygon_nf(:,i+3);
end
4 Comments
More Answers (0)
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!