numpy.select() function - Python Last Updated : 07 Apr, 2025 Summarize Comments Improve Suggest changes Share Like Article Like Report The numpy.select() function is used to construct an array by selecting elements from a list of choices based on multiple conditions. It is particularly useful when dealing with conditional replacements or transformations in NumPy arrays. Example: Python import numpy as np arr = np.array([10, 20, 30, 40]) conditions = [arr < 20, arr > 30] choices = [100, 200] result = np.select(conditions, choices, default=0) print(result) Syntax:numpy.select(condlist, choicelist, default=0)Parameters:condlist : list of bool ndarrays A list of boolean NumPy arrays that determine from which array in choicelist the output elements are selected. If multiple conditions are True, the first one encountered is used.choicelist : list of ndarrays A list of arrays from which the output elements are chosen. It must have the same length as condlist.default : scalar, optional (default=0) The value inserted in the output array when none of the conditions are met.Return Value:ndarray : An array with elements chosen from choicelist based on the conditions in condlist.Code Implementation 1. Basic Usage of numpy.select() Here:If arr < 3, the corresponding element is taken from arr.If arr > 4, the corresponding element is taken from arr**3.Otherwise, the default value 0 is used. Python import numpy as np arr = np.arange(8) condlist = [arr < 3, arr > 4] choicelist = [arr, arr**3] result = np.select(condlist, choicelist) print(result) Output :[ 0 1 2 0 0 125 216 343]2. Using a Different Default ValueHere:Values where arr < 4 are taken from arr.Values where arr > 6 are taken from arr**2.All other values are replaced with -1 (instead of 0). Python arr = np.arange(8) condlist = [arr < 4, arr > 6] choicelist = [arr, arr**2] # Custom default value (e.g., -1) result = np.select(condlist, choicelist, default=-1) print(result) Output: 0 1 2 3 -1 -1 -1 49]3. Handling Multiple ConditionsHere :If arr is even (arr % 2 == 0), it is multiplied by 10.If arr is divisible by 3 (arr % 3 == 0), it is negated.If neither condition is met, the default value 100 is used. Python arr = np.arange(10) condlist = [arr % 2 == 0, arr % 3 == 0] choicelist = [arr * 10, arr * -1] result = np.select(condlist, choicelist, default=100) print(result) Output: [ 0 100 20 -3 40 100 60 100 80 -9]Why Use numpy.select()?More flexible than numpy.where() when dealing with multiple conditions.Helps avoid complex nested if-else conditions in array transformations.Efficient and concise for applying different transformations to an array based on conditions.Comparison with numpy.where()Featurenumpy.select()numpy.where()Multiple ConditionsYesNo (only two conditions: True/False)Custom Default ValueYesNoSimplicityBetter for multiple rulesBetter for simple if-elseThe numpy.select() function is a powerful tool for conditional selection and transformation of array elements. It is especially useful when handling multiple conditions efficiently in a structured way. Mastering its usage will help simplify complex array operations in Python. Comment More infoAdvertise with us Next Article numpy.select() function - Python S sanjoy_62 Follow Improve Article Tags : Python Python-numpy Python numpy-arrayManipulation python Practice Tags : pythonpython Similar Reads numpy.ma.where() function - Python numpy.ma.where() function return a masked array with elements from x or y, depending on condition. Syntax : numpy.ma.where(condition, x, y) Parameter : condition : [array_like, bool] Where True, yield x, otherwise yield y. x, y : [array_like, optional] Values from which to choose. x, y and condition 1 min read numpy.who function - Python numpy.who() function print the NumPy arrays in the given dictionary. Syntax : numpy.who(vardict = None) Parameters : vardict : [dict, optional] A dictionary possibly containing ndarrays. Return : Returns âNoneâ. If there is no dictionary passed in or vardict is None then returns NumPy arrays in the 1 min read Python OpenCV - selectroi() Function In this article, we are going to see an interesting application of the OpenCV library, which is selectROI(). With this method, we can select a range of interest in an image manually by selecting the area on the image. Syntax:Â cv2.selectROI(Window_name, source image) Parameter: window_name: Â name of 3 min read numpy.where() in Python We will explore the basics of numpy.where(), how it works, and practical use cases to illustrate its importance in data manipulation and analysis.Syntax of numpy.where()Syntax :numpy.where(condition[, x, y]) Parameters condition: A condition that tests elements of the array.x (optional): Values from 3 min read numpy.fromiter() function â Python NumPy's fromiter() function is a handy tool for creating a NumPy array from an iterable object. This iterable can be any Python object that provides elements one at a time. The function is especially useful when you need to convert data from a custom data source, like a file or generator, into a Num 2 min read Like