This program shows how to find the smallest and largest scores in a set of test results. It finds the overall min and max, then finds min scores per test and max scores per student.
NumPy
import numpy as np
# Create a 2D array of test scores
scores = np.array([[88, 92, 79],
[95, 85, 91],
[78, 90, 86]])
# Find the minimum score overall
min_score = np.min(scores)
# Find the maximum score overall
max_score = np.max(scores)
# Find minimum score in each test (column)
min_per_test = np.min(scores, axis=0)
# Find maximum score for each student (row)
max_per_student = np.max(scores, axis=1)
print(f"Minimum score overall: {min_score}")
print(f"Maximum score overall: {max_score}")
print(f"Minimum score per test: {min_per_test}")
print(f"Maximum score per student: {max_per_student}")
OutputSuccess
Important Notes
If you don't use axis, np.min() and np.max() look at all values in the array.
Using axis=0 checks down columns, axis=1 checks across rows in 2D arrays.
Summary
np.min() finds the smallest value in data.
np.max() finds the largest value in data.
You can find min or max overall or along rows/columns using axis.
Practice
(1/5)
1. What does the function np.min() do when applied to a NumPy array?
easy
A. Calculates the average of the array
B. Finds the largest value in the array
C. Finds the smallest value in the array
D. Counts the number of elements in the array
Solution
Step 1: Understand the purpose of np.min()
The function np.min() is designed to find the minimum value in a NumPy array.
Step 2: Compare with other options
Options B, C, and D describe different functions: max, mean, and size respectively, which are not what np.min() does.
Final Answer:
Finds the smallest value in the array -> Option C
Quick Check:
np.min() = smallest value [OK]
Hint: np.min() always returns the smallest number [OK]
Common Mistakes:
Confusing np.min() with np.max()
Thinking np.min() calculates average
Assuming np.min() counts elements
2. Which of the following is the correct NumPy function syntax to find the maximum value in a NumPy array named arr?
easy
A. max(arr)
B. np.max(arr)
C. np.maximum(arr)
D. arr.max()
Solution
Step 1: Identify correct function usage
The function np.max(arr) correctly finds the maximum value in the array arr.
Step 2: Analyze other options
arr.max() is valid but uses method syntax, not function syntax. np.maximum(arr) is incorrect because np.maximum() compares two arrays element-wise. max(arr) is Python's built-in max, which works on lists but not efficiently on NumPy arrays.
Final Answer:
np.max(arr) -> Option B
Quick Check:
np.max(arr) = max value [OK]
Hint: Use np.max(array) to get max value quickly [OK]
Axis=1 means operate along columns of a 2D or higher array. For 1D arrays, axis=1 is invalid and causes an error.
Final Answer:
The array is 1D, axis=1 is invalid -> Option A
Quick Check:
1D array + axis=1 = error [OK]
Hint: Use axis only within array dimension range [OK]
Common Mistakes:
Using axis=1 on 1D arrays
Thinking np.min() can't take axis
Assuming array has non-numeric data
5. Given a 2D NumPy array data representing daily temperatures for a week (rows = days, columns = cities), how would you find the highest temperature recorded in each city?
hard
A. np.max(data, axis=1)
B. np.min(data, axis=1)
C. np.min(data, axis=0)
D. np.max(data, axis=0)
Solution
Step 1: Understand data layout
Rows represent days, columns represent cities. To find max per city, we want max down each column.
Step 2: Use axis=0 for column-wise operation
Using np.max(data, axis=0) finds the maximum temperature for each city across all days.
Final Answer:
np.max(data, axis=0) -> Option D
Quick Check:
Max per city = np.max(data, axis=0) [OK]
Hint: axis=0 aggregates down columns (cities) [OK]
Common Mistakes:
Using axis=1 to find max per city
Using np.min() instead of np.max()
Confusing rows and columns
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.