Bird
Raised Fist0
NumPydata~5 mins

Slicing rows and columns in NumPy - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does slicing rows and columns mean in a numpy array?
It means selecting specific parts of the array by choosing certain rows and columns using index ranges or lists.
Click to reveal answer
beginner
How do you select the first 3 rows and first 2 columns of a numpy array named arr?
Use arr[:3, :2]. The first part :3 selects rows 0, 1, 2 and :2 selects columns 0 and 1.
Click to reveal answer
intermediate
What does arr[1:4, 2] select from a numpy array?
It selects rows 1, 2, and 3 from column 2, returning a 1D array of those values.
Click to reveal answer
beginner
How can you select all rows but only the last column of a numpy array arr?
Use arr[:, -1]. The colon means all rows, and -1 means the last column.
Click to reveal answer
intermediate
What happens if you use arr[::2, ::3] on a numpy array?
It selects every 2nd row and every 3rd column, starting from the first row and column.
Click to reveal answer
Which numpy slice selects rows 2 to 4 and columns 1 to 3 from array arr?
Aarr[1:3, 2:4]
Barr[1:4, 2:5]
Carr[2:5, 1:4]
Darr[2:4, 1:3]
What does arr[:, 0] return?
ALast row, first column
BFirst row, all columns
CFirst row, first column
DAll rows, first column
How do you select every other row and every other column from arr?
Aarr[::2, ::2]
Barr[1::2, 1::2]
Carr[::1, ::1]
Darr[2::2, 2::2]
What is the shape of the result of arr[1:3, 2:5] if arr has shape (5, 6)?
A(2, 3)
B(2, 4)
C(3, 4)
D(3, 3)
Which slice selects the last two rows and all columns from arr?
Aarr[:, -2:]
Barr[-2:, :]
Carr[:2, :]
Darr[-1:, :]
Explain how to slice a numpy array to select specific rows and columns.
Think about how you pick parts of a table by row and column numbers.
You got /4 concepts.
    Describe what arr[::2, 1:5:2] does on a numpy array.
    Focus on the meaning of the double colons and step values.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the slicing notation array[1:3, 0:2] do on a 2D NumPy array?
      easy
      A. Selects rows 1 and 2, and columns 0 and 1
      B. Selects rows 0 to 3 and columns 0 to 2
      C. Selects rows 1 to 3 and columns 0 to 2
      D. Selects rows 1 and 3, and columns 0 and 2

      Solution

      1. Step 1: Understand row slicing 1:3

        This means select rows starting at index 1 up to but not including index 3, so rows 1 and 2.
      2. Step 2: Understand column slicing 0:2

        This means select columns starting at index 0 up to but not including index 2, so columns 0 and 1.
      3. Final Answer:

        Selects rows 1 and 2, and columns 0 and 1 -> Option A
      4. Quick Check:

        Slice end is excluded = A [OK]
      Hint: Remember end index is excluded in slicing [OK]
      Common Mistakes:
      • Including the end index in the slice
      • Confusing rows and columns order
      • Using commas incorrectly in slicing
      2. Which of the following is the correct syntax to select all rows and columns 2 to 4 (inclusive start, exclusive end) from a NumPy array named arr?
      easy
      A. arr[2:4, :]
      B. arr[:, 2:5]
      C. arr[2:5, :]
      D. arr[:, 2:4]

      Solution

      1. Step 1: Identify rows and columns in slicing

        The first index before comma is rows, second is columns.
      2. Step 2: Select all rows and columns 2 to 4

        All rows means :, columns 2 to 4 means 2:5 because end is excluded.
      3. Final Answer:

        arr[:, 2:5] -> Option B
      4. Quick Check:

        All rows = :, columns 2 to 4 = 2:5 [OK]
      Hint: Use ':' for all rows or columns [OK]
      Common Mistakes:
      • Swapping rows and columns in slicing
      • Using wrong end index in slice
      • Missing colon for all rows or columns
      3. Given the NumPy array:
      import numpy as np
      arr = np.array([[10, 20, 30, 40],
                      [50, 60, 70, 80],
                      [90, 100, 110, 120]])
      print(arr[0:2, 1:3])

      What is the output?
      medium
      A. [[50 60] [90 100]]
      B. [[10 20 30] [50 60 70]]
      C. [[20 30 40] [60 70 80]]
      D. [[20 30] [60 70]]

      Solution

      1. Step 1: Slice rows 0 to 1

        Rows 0 and 1 are selected (indices 0 and 1), so first two rows.
      2. Step 2: Slice columns 1 to 2

        Columns 1 and 2 are selected (indices 1 and 2), so second and third columns.
      3. Final Answer:

        [[20 30] [60 70]] -> Option D
      4. Quick Check:

        Rows 0-1 and columns 1-2 slice = A [OK]
      Hint: Remember slicing excludes the end index [OK]
      Common Mistakes:
      • Including the end index in slice
      • Mixing up rows and columns
      • Printing the whole array instead of slice
      4. What is wrong with this code snippet to select rows 1 to 3 and columns 0 to 2 from a NumPy array data?
      slice = data[1:3, 0:2]
      medium
      A. It selects rows 1 and 2 only, not row 3
      B. It causes a syntax error due to variable name 'slice'
      C. It selects columns 0, 1, and 2 instead of 0 and 1
      D. It selects rows 0 to 3 instead of 1 to 3

      Solution

      1. Step 1: Examine row slicing 1:3

        In Python/NumPy slicing, the end index is exclusive, so 1:3 selects rows 1 and 2 only, not row 3.
      2. Step 2: Column slicing 0:2

        Selects columns 0 and 1 (excludes 2).
      3. Final Answer:

        It selects rows 1 and 2 only, not row 3 -> Option A
      4. Quick Check:

        End index excluded in slicing = A [OK]
      Hint: Slicing excludes the end index [OK]
      Common Mistakes:
      • Assuming slice includes end index
      • Ignoring variable naming conflicts
      • Confusing rows and columns in slicing
      5. You have a 5x5 NumPy array arr. How do you extract the middle 3 rows and middle 3 columns as a new array?
      hard
      A. arr[0:3, 0:3]
      B. arr[2:5, 2:5]
      C. arr[1:4, 1:4]
      D. arr[1:3, 1:3]

      Solution

      1. Step 1: Identify middle rows in 5x5 array

        Rows are indexed 0 to 4. Middle 3 rows are indices 1, 2, 3, so slice 1:4.
      2. Step 2: Identify middle columns similarly

        Columns 1, 2, 3 are middle 3 columns, so slice 1:4.
      3. Final Answer:

        arr[1:4, 1:4] -> Option C
      4. Quick Check:

        Middle 3 rows and columns = 1:4 slice [OK]
      Hint: Count indices carefully; middle 3 means 1 to 3 inclusive [OK]
      Common Mistakes:
      • Using wrong slice end index
      • Selecting too few or too many rows/columns
      • Confusing zero-based indexing
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard