What do brackets mean in this expression, y(Z)?

2 views (last 30 days)
>>%Hi:
>>y = [1; 2; 3; 1; 2; 3; 1; 2; 3];
>>Z=[1 1 2; 2 1 1; 1 1 4];
>>y(Z)
ans =
1 1 2
2 1 1
1 1 1
>>%But I have no idea what the () operation is. I see it in some code that I'm trying to figure out. Thanks.
>>Wallace

Accepted Answer

Jason Moore
Jason Moore on 6 Feb 2015
Edited: Jason Moore on 6 Feb 2015
In this case Z is being used to reference the y array. Since Z is also an array, for each value of Z the y array will be referenced and will return the corresponding value in y. Therefore, the result of this command will also be an array the size of Z
i.e. the first row of your Z array is 1 1 2 So when used in the following command MATLAB is actually returning y(1),y(1),y(2) for your first row of data
  3 Comments
Isaiah Naranjo
Isaiah Naranjo on 17 Oct 2020
What about the last row?
1 1 1
i can see where y returns y(1),y(1),y(2) for the first row what about the second?
and mainly the third row? where its 1 1 1 instead 1 1 4?
Wallace Yang
Wallace Yang on 26 Oct 2020
The last row consists of the 1st element, the 1st element, and the 4th element of the y array (in this case, also a 1).

Sign in to comment.

More Answers (0)

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!