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.

Antworten (1)

Adam
Adam am 11 Dez. 2014
Bearbeitet: Adam am 11 Dez. 2014

0 Stimmen

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.

Kategorien

Gefragt:

am 11 Dez. 2014

Bearbeitet:

am 11 Dez. 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by