This tutorial will discuss about unique ways to remove elements from numpy array that are greater than a value.

## Table of Contents

## Using [] Operator with NumPy Array

Suppose we have an NumPy Array of numbers,

numbers = np.array([22, 45, 34, 78, 39, 47])

Now, we want to delete all the values from this array which are greater than 40 i.e. a threshold value.

For this, first we will create a boolean mask/array by comparing the NumPy array and threshold value using the < operator. It will return a boolean array or mask, where each True value denotes set the corresponding value in the original array is smaller than the threshold value i.e. 40.

# Define the threshold value threshold = 40 # Create a boolean mask for the elements that # are smaller than or equal to the threshold value mask = numbers < threshold

Then we will pass this boolean array into the subscript operator of numpy array. It will return a copy of the numpy array after removing all the values for which provided boolean mask had value False.

# Use the mask to create a new array with # the specified elements removed numbers = numbers[mask]

Basically it will remove all the values from numpy array which are Greater than the threshold value that is 40.

**Let’s see the complete example,**

### Frequently Asked:

- Remove elements from Array Greater than a Value in Python
- How to Remove Smallest Element From a NumPy Array?
- How to Remove Element from a NumPy Array?
- Remove Every Nth Element From a NumPy Array

import numpy as np # Create a NumPy Array numbers = np.array([22, 45, 34, 78, 39, 47]) # Define the threshold value threshold = 40 # Create a boolean mask for the elements that # are smaller than or equal to the threshold value mask = numbers < threshold # Use the mask to select elements for which the # corresponding element in mask contans True numbers = numbers[mask] # Print the NumPy array print(numbers)

**Output**

[22 34 39]

## Using numpy.where() function

In this solution, we will fetch the index position of all the elements which are greater than threshold value in the number array.

For these we will compare the number array with the threshold value using `>=`

operator. It will return in boolean sequence, where each true value denotes set the corresponding value in array is greater than the threshold value.

# Define the threshold value threshold = 40 numbers >= threshold

Then we will pass this boolean sequence into the where() function of numpy module. Like this,

# Use the `where` function to identify the indices # of the elements to remove indicesToRemove = np.where(numbers >= threshold)

It will return an array of index positions of elements which were true in the boolean sequence, basically the index position of elements which are greater than the threshold value in the number array.

Then we will use the delete() function from numpy module to delete elements from this index positions.

# Use the delete() function to remove the elements # at the specified indices numbers = np.delete(numbers, indicesToRemove)

It will delete all the elements from array which are greater than the threshold value.

In the below example we are going to delete all the elements from the numpy array which are greater than 40.

**Let’s see the complete example,**

import numpy as np # Create a NumPy Array numbers = np.array([22, 45, 34, 78, 39, 47]) # Define the threshold value threshold = 40 # Use the `where` function to identify the indices # of the elements to remove indicesToRemove = np.where(numbers >= threshold) # Use the delete() function to remove the elements # at the specified indices numbers = np.delete(numbers, indicesToRemove) # Print the numpy array print(numbers)

**Output**

[22 34 39]

## Summary

We learned two ways to remove elements from NumPy Array that are greater than a threshold value.