Problem Formulation and Solution Overview
To make it more interesting, these examples will generate an array of ten (10) random integers using the random.randint()
function from the NumPy library and return the minimum and maximum values of the same.
Preparation
import numpy as np from numpy import random
Method 1: Use min() and max()
This example uses NumPy’s min()
and max()
functions to retrieve an array’s minimum and maximum values from a 1D NumPy Array.
rand_nums = random.randint(100, size=(10)) min_num = np.min(rand_nums) max_num = np.max(rand_nums) print(min_num, max_num)
The first line in this code generates ten (10) random integers by calling the random.randint()
function and passing this two (2) arguments: the range to generate from (0-100) and the total number to return (size=10
).
The results save to rand_nums
. If output to the terminal, a random array similar to the one below would display.
[49 10 64 86 91 43 42 88 94 10] |
The following two (2) lines extract the minimum and maximum values by calling the min()
and max()
functions respectively and passing rand_nums
as an argument to each. The results are output to the terminal.
10 94 |
Method 2: Use amin() and amax()
This example uses NumPy’s amin()
and amax()
functions to retrieve an array’s minimum and maximum values from a 1D NumPy Array.
rand_nums = random.randint(100, size=(10)) min_num = np.amin(rand_nums) max_num = np.amax(rand_nums) print(min_num, max_num)
The first line in this code generates ten (10) random integers by calling the random.randint()
function and passing this two (2) arguments: the range to generate from (0-100) and the total number to return (size=10
).
The results save to rand_nums
. If output to the terminal, a random array similar to the one below would display.
[47 87 8 70 94 13 7 69 92 42] |
The following two (2) lines extract the minimum and maximum values by calling the min()
and max()
functions, respectively and passing rand_nums
as an argument to each. The results are output to the terminal.
7 94 |
Method 3: Use sort()
This example uses NumPy’s sort()
function to retrieve an array’s minimum and maximum values from a 1D NumPy Array.
rand_nums = random.randint(100, size=(10)) sorted_nums = np.sort(rand_nums) min_num = sorted_nums[0] max_num = sorted_nums[len(sorted_nums)-1] print(min_num, max_num)
The first line in this code generates ten (10) random integers by calling the random.randint()
function and passing these two (2) arguments: the range to generate from (0-100) and the total number to return (size=10
).
The results save to rand_nums
. If output to the terminal, a random array similar to the one below would display.
[49 61 4 60 44 49 17 0 11 3] |
The following line sorts the array from smallest to largest. The results save to sorted_num
. If output to the terminal, the sorted array displays.
[ 0 3 4 11 17 44 49 49 60 61] |
Then, the minimum and maximum values are extracted using slicing and saved to min_num
and max_num
, respectively and output to the terminal.
0 61 |
Method 4: Use minimum() and maximum()
This example uses NumPy’s minimum()
and maximum()
functions to retrieve an array’s minimum and maximum values from a 1D NumPy Array.
rand_nums = random.randint(20, size=(5)) min_nums = np.minimum(rand_nums, [5,6,7,8,9]) max_nums = np.maximum(rand_nums, [5,6,7,8,9])
The first line in this code generates twenty (20) random integers by calling the random.randint()
function and passing these two (2) arguments: the range to generate from (0-20) and the total number to return (size=5
).
The results save to rand_nums
. If output to the terminal, a random array similar to the one below would display.
[11 13 2 12 8] |
The following line calls the minimum()
function and passes it two (2) arguments, rand_num
, and a second array ([5,6,7,8,9]
). This array is the same length as rand_num
and is used to compare each element in both arrays and output the lowest value for each in a array format.
[5 6 2 8 8] |
If you compare the first element in each array, 11, and 5, 5 is the lowest (minimum) number and is appended to the result. If you then compare 13 and 6, 6 is appended to the result, and so on.
[11 13 2 12 8] |
The maximum()
function works exactly the same as above, except it returns the maximum value as shown below.
[11 13 7 12 9] |
Bonus: Use min() and max()
This example uses NumPy’s min()
and max()
functions to read in a CSV file into a Pandas DataFrame and retrieve the minimum and maximum values of the Solved
column.
The pandas
library must be installed to successfully run this code. In addition, the finxter.csv must reside in the current working directory.
import pandas as pd import numpy as np df = pd.read_csv('finxter.csv') min_num = np.min(df['Solved']) max_num = np.max(df['Solved']) print(min_num, max_num)
The output from the above displays below.
15 2807 |
Summary
This article has provided five (5) ways to find the minimum and maximum values in a NumPy array to select the best fit for your coding requirements.
Good Luck & Happy Coding!
Programming Humor – Python


At university, I found my love of writing and coding. Both of which I was able to use in my career.
During the past 15 years, I have held a number of positions such as:
In-house Corporate Technical Writer for various software programs such as Navision and Microsoft CRM
Corporate Trainer (staff of 30+)
Programming Instructor
Implementation Specialist for Navision and Microsoft CRM
Senior PHP Coder