## Numpy where function with two conditions

Numpy is a powerful library in Python used for numerical computations. One of the useful functions provided by Numpy is the `where`

function, which allows you to perform element-wise conditional operations on arrays. In this article, we will focus on how to use the `where`

function with two conditions.

When using the `where`

function with two conditions, both conditions must be boolean arrays of the same shape as the input array. The `where`

function will return elements from one of two input arrays based on the conditions provided.

## Syntax of `numpy.where()`

```
numpy.where(condition1 & condition2, x, y)
```

Where:

– `condition1`

and `condition2`

are boolean arrays

– `x`

is the value to be returned when the condition is True

– `y`

is the value to be returned when the condition is False

Now, let’s dive into some examples to understand how to use the Numpy `where`

function with two conditions:

## Example 1

```
import numpy as np
arr = np.array([2, 5, 8, 10])
condition1 = (arr > 5)
condition2 = (arr < 10)
result = np.where(condition1 & condition2, arr, 0)
print(result)
```

Output:

## Example 2

```
import numpy as np
arr = np.array([[1, 3, 5], [7, 9, 11]])
condition1 = (arr % 2 == 0)
condition2 = (arr % 3 == 0)
result = np.where(condition1 & condition2, arr, -1)
print(result)
```

Output:

## Example 3

```
import numpy as np
arr = np.array([[-1, 3, -5], [7, -9, 11]])
condition1 = (arr < 0)
condition2 = (arr % 2 != 0)
result = np.where(condition1 & condition2, arr, 100)
print(result)
```

Output:

## Example 4

```
import numpy as np
arr = np.array([[-1, 3, -5], [7, -9, 11]])
condition1 = (arr < 0)
condition2 = (arr > -10)
result = np.where(condition1 & condition2, arr, -arr)
print(result)
```

Output:

## Example 5

```
import numpy as np
arr = np.array([[1, 3, 5], [7, 9, 11]])
condition1 = (arr % 2 == 0)
condition2 = (arr < 6)
result = np.where(condition1 & condition2, arr, arr * 2)
print(result)
```

Output:

## Example 6

```
import numpy as np
arr = np.array([[-1, 3, -5], [7, -9, 11]])
condition1 = (arr < 0)
condition2 = (arr > -5)
result = np.where(condition1 & condition2, arr * 5, arr + 10)
print(result)
```

Output:

## Example 7

```
import numpy as np
arr = np.array([[1, 3, 5], [7, 9, 11]])
condition1 = (arr % 3 == 0)
condition2 = (arr > 5)
result = np.where(condition1 & condition2, arr ** 2, arr)
print(result)
```

Output:

## Example 8

```
import numpy as np
arr = np.array([[1, 3, 5], [7, 9, 11]])
condition1 = (arr % 2 == 0)
condition2 = (arr < 5)
result = np.where(condition1 & condition2, arr * 3, arr + 2)
print(result)
```

Output:

## Example 9

```
import numpy as np
arr = np.array([[1, 3, 5], [7, 9, 11]])
condition1 = (arr % 2 != 0)
condition2 = (arr < 10)
result = np.where(condition1 & condition2, arr, arr // 2)
print(result)
```

Output:

## Example 10

```
import numpy as np
arr = np.array([[1, 3, 5], [7, 9, 11]])
condition1 = (arr % 3 == 0)
condition2 = (arr > 5)
result = np.where(condition1 & condition2, arr, arr + arr)
print(result)
```

Output:

## Conclusion of `numpy.where()`

These examples demonstrate how the Numpy `where`

function can be used with two conditions to perform element-wise operations on arrays. By applying multiple conditions, you can customize the output based on your specific requirements.