Removing entries of vector indexed by odd integer.

42 views (last 30 days)
So, in a question we've been asked to define a vector "x" which begins at 1.5 and ends at -3.5 with 101 entries in between without the use of any loops. So, I used linspace(1.4, -3.5, 101) to do this. However the next part of the question requires you to create a matrix "y" which corresponds to "x" only with the entries indexed by an odd integer removed. How can you do this without using a loop? Is there a function for it? Thanks.

Accepted Answer

Leah
Leah on 25 Sep 2013
You just have to reference every other element of the vector you created.
x=linspace(1.4, -3.5, 101) ;
y=x(1:2:end);
  1 Comment
David
David on 25 Sep 2013
Will that not include elements 1 and 101 though, and they're odd indexes? Why wouldn't it be y = x(2:2:100);?

Sign in to comment.

More Answers (1)

Matt J
Matt J on 25 Sep 2013
Edited: Matt J on 25 Sep 2013
x=linspace(1.4, -3.5, 101) ;
y=x;
y(1:2:end)=[];
or
y=x(2:2:end);
  9 Comments
Matt J
Matt J on 25 Sep 2013
See also
>> 2:2:15
ans =
2 4 6 8 10 12 14

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!