0
0
NumPydata~20 mins

Sorting along axes in NumPy - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Sorting Mastery Badge
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Predict Output
intermediate
2:00remaining
Output of sorting a 2D array along axis 0
What is the output of the following code that sorts a 2D numpy array along axis 0?
NumPy
import numpy as np
arr = np.array([[3, 1, 2], [1, 5, 4], [2, 0, 3]])
sorted_arr = np.sort(arr, axis=0)
print(sorted_arr)
A
[[1 0 2]
 [2 1 3]
 [3 5 4]]
B
]]4 5 3[ 
]3 1 2[ 
]2 0 1[[
C
[1 0 2]
 [2 1 3]
 [3 5 4]]
D
[[1 0 2]
 [2 1 3]
 [3 4 5]]
Attempts:
2 left
💡 Hint
Remember axis=0 sorts each column independently.
Predict Output
intermediate
2:00remaining
Sorting a 3D array along axis 2
What is the output of sorting the following 3D numpy array along axis 2?
NumPy
import numpy as np
arr = np.array([[[3, 1, 2], [1, 5, 4]], [[2, 0, 3], [7, 6, 8]]])
sorted_arr = np.sort(arr, axis=2)
print(sorted_arr)
A
[[[1 2 3]
  [1 4 5]]

 [[0 2 3]
  [6 7 8]]]
B
[[1 2 3]
  [1 4 5]]

 [[0 2 3]
  [6 7 8]]]
C
]]]8 7 6[  
]3 2 0[[ 

]]5 4 1[  
]3 2 1[[[
D
[[[1 2 3]
  [1 4 5]]

 [[0 2 3]
  [6 7 8]]
Attempts:
2 left
💡 Hint
Sorting along axis 2 sorts the innermost arrays.
🔧 Debug
advanced
2:00remaining
Identify the error in sorting with an invalid axis
What error does the following code raise when trying to sort a 2D numpy array along axis 3?
NumPy
import numpy as np
arr = np.array([[3, 1, 2], [1, 5, 4]])
sorted_arr = np.sort(arr, axis=3)
ATypeError: axis must be an integer
BValueError: could not broadcast input array from shape (3,3) into shape (2,3)
CAxisError: axis 3 is out of bounds for array of dimension 2
DSyntaxError: invalid syntax
Attempts:
2 left
💡 Hint
Check the number of dimensions of the array and the axis parameter.
data_output
advanced
2:00remaining
Number of items after sorting a 2D array along axis 1
After sorting the following 2D numpy array along axis 1, how many items are in the resulting array?
NumPy
import numpy as np
arr = np.array([[3, 1, 2], [1, 5, 4]])
sorted_arr = np.sort(arr, axis=1)
print(sorted_arr.size)
A2
B6
C9
D3
Attempts:
2 left
💡 Hint
The size attribute gives total number of elements in the array.
🚀 Application
expert
3:00remaining
Sorting a DataFrame column using numpy sort along axis
Given a pandas DataFrame with multiple columns, which numpy sort call correctly sorts the values of the 'Age' column only, without changing the DataFrame shape?
NumPy
import pandas as pd
import numpy as np
df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 20]})
# Which numpy sort call sorts the 'Age' column values correctly?
Anp.sort(df.values, axis=1)
Bnp.sort(df.values, axis=0)
Cnp.sort(df['Age'], axis=1)
Dnp.sort(df['Age'].values, axis=0)
Attempts:
2 left
💡 Hint
The 'Age' column is a 1D array; axis=0 sorts it correctly.