MATLAB error with indexing
Show older comments
What does this code : Y = eye(10)(y,:); do? Assume that y is an 5000 x 1 vector,when I try to execute that line of code it yields an error :
()-indexing must appear last in an index expression.
I need a bit help.
Answers (1)
Well, that is exactly what it does - it yields an error!
Unlike C++ or Java or other languages you cannot chain together (or whatever the official software engineering terminology is!) parenthesis like that.
You have to do:
Y = eye(10);
Y = Y(y,:);
in two lines to achieve that. Although with the example you give that would also potentially yield an error because eye(10) is a 10*10, 100 element matrix so unless your 5000-element matrix, y, contains only values < 100 you will still get an index exceeds dimensions error.
Categories
Find more on Creating and Concatenating Matrices 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!