How to extract values from an array?
Show older comments
Hello all,
I am trying to extract values from an array using the command given below.
x = 1:0.1:2;
val1 = x(1:4);
val2 = x(1):x(4);
Can anyone tell how val1 is different than val2?
Thanks in advance!
Answers (2)
Star Strider
on 10 Mar 2020
0 votes
The default ‘step’ for the colon operator is 1. So ‘val1’ correctly addresses elements 1 through 4.
Since ‘x’ has values from 1 to 2 with a step of 0.1, and since ‘x(1)’ is 1 and ‘x(4)’ is 1.3, the next value after ‘x(1)’ is 2. Since this is greater than 1.3, ‘val2’ returns only the first value in the series, that being ‘x(1)’ or 1.
Stijn Haenen
on 10 Mar 2020
0 votes
val1 contains the numbers x(1), x(2) x(3) and x(4). val2 contains the numbers between x(1) and x(4) with steps on 1, but x(4) is not large enoug to complete the step so only x(1) is in the list
Categories
Find more on Operators and Elementary Operations 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!