Work with Array

2 views (last 30 days)
Mohammad
Mohammad on 9 Mar 2012
Hello Is there any function to elimiate automomatically member with negetive index? for example:
i=1:10 y(i)=x(i-2);
it's a simple example. could you please help me? thank you.

Accepted Answer

Jacob Halbrooks
Jacob Halbrooks on 9 Mar 2012
Logical indexing can be a good way to remove or manipulate elements in an array. In your case, let's say you have an array of indices, some of which are invalid (i.e. less than 1):
ind = [1:10]-2
Create a new array of indices with only valid values:
validInd = ind(ind >= 1)
If you wanted to instead replace illegal index values with a number such as 1, you could do this:
validInd = ind;
validInd(validInd< 1) = 1

More Answers (1)

PHAM
PHAM on 9 Mar 2012
maybe we can try for i=2:12 y(i+2) = x(i)
  1 Comment
Mohammad
Mohammad on 9 Mar 2012
Thank you . i said it's a simple example but in real program i can't do that.
if you know any function that put zero for illegal index , for example return 0 for x(-1), please help me.

Sign in to comment.

Tags

Products

Community Treasure Hunt

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

Start Hunting!