 # Does Gauss have similar function as " %in%" in R or "find" in matlab

Hi guys,

First I apologize if my question seems stupid but I'm really stuck here. I want to check whether a number is in a vector or not, what is the command in GAUSS? I know in Matlab there is `find` function and in R there is `%in%`, but I tried searching these keywords and couldn't find any.

0

You have a few options, depending on what exactly you are looking to do.

### Find if one or more elements in a matrix match a specific value

``````// Vector to search in
haystack = { 1, 2, 4, 5, 6 };

// Does 'haystack' contain the number 3?
has_3 = contains(haystack, 3);

// Does 'haystack' contain the number 6?
has_6 = contains(haystack, 6);

// Does 'haystack' contain either 3 or 4?
needles = { 3, 4 };
has_34 = contains(haystack, needles);``````

After the code above:

```has_3 = 0
has_6 = 1
has_34 = 1```

### Find the indices of elements which match a value in a vector

`indexcat` will the location of elements in a vector from a specified range. Note that the range can be a single number.

``````// Create a vector
x = { 1, 2, 4, 5, 6, 4, 2 };

// Set 'found' equal to index location
// of 4 in 'x', or return a missing value
idx = indexcat(x, 4);``````

After the code above:

```idx = 3
6```

### Find the indices of elements which match one or more values in a vector

If you want to locate more than one element inside of a vector, you can use `indnv`.

``````// Create a vector
x = { 1, 2, 4, 5, 6, 3 };

// Elements we are looking for in 'x'
what = { 3, 5 };

// Set 'found' equal to a 2x1 vector,
// containing the index of each element
// of 'what' in 'x' or a missing value
found = indnv(what, x);``````

After the code above:

```found = 6
4``` aptech

1,393

### Have a Specific Question?

Get a real answer from a real person

### Need Support?

Get help from our friendly experts.