Get Nth Column of Matrix in Python

When working with matrices in Python, you often need to extract a specific column. Python provides several methods to get the Nth column of a matrix, including list comprehension, the zip() function, and NumPy arrays.

Using List Comprehension

The most straightforward approach is using list comprehension to extract elements at a specific index ?

matrix = [[34, 67, 89], [16, 27, 86], [48, 30, 0]]

print("The matrix is:")
print(matrix)

N = 1
print(f"Getting column {N}:")

# Extract Nth column using list comprehension
nth_column = [row[N] for row in matrix]
print(nth_column)
The matrix is:
[[34, 67, 89], [16, 27, 86], [48, 30, 0]]
Getting column 1:
[67, 27, 30]

Using zip() Function

The zip() function can transpose the matrix, making it easy to access columns ?

matrix = [[34, 67, 89], [16, 27, 86], [48, 30, 0]]

# Transpose matrix using zip
columns = list(zip(*matrix))
print("All columns:")
print(columns)

# Get specific column
N = 2
nth_column = list(columns[N])
print(f"Column {N}:")
print(nth_column)
All columns:
[(34, 16, 48), (67, 27, 30), (89, 86, 0)]
Column 2:
[89, 86, 0]

Using NumPy Arrays

NumPy provides the most efficient way to work with matrices and extract columns ?

import numpy as np

matrix = [[34, 67, 89], [16, 27, 86], [48, 30, 0]]
np_matrix = np.array(matrix)

print("NumPy matrix:")
print(np_matrix)

N = 0
nth_column = np_matrix[:, N]
print(f"Column {N}:")
print(nth_column)
NumPy matrix:
[[34 67 89]
 [16 27 86]
 [48 30  0]]
Column 0:
[34 16 48]

Checking if Element Exists in Column

You can combine column extraction with the any() function to check if an element exists in a specific column ?

matrix = [[34, 67, 89], [16, 27, 86], [48, 30, 0]]

N = 1
target_element = 30

# Check if element exists in Nth column
exists = any(row[N] == target_element for row in matrix)

print(f"Does {target_element} exist in column {N}?")
print(exists)

# Show the actual column for verification
nth_column = [row[N] for row in matrix]
print(f"Column {N}: {nth_column}")
Does 30 exist in column 1?
True
Column 1: [67, 27, 30]

Comparison

Method Best For Performance
List Comprehension Single column extraction Good for small matrices
zip() Multiple columns or transposition Memory efficient
NumPy Large matrices and mathematical operations Fastest for large data

Conclusion

Use list comprehension for simple column extraction from small matrices. For large datasets or complex matrix operations, NumPy arrays provide the best performance and functionality.

Updated on: 2026-03-25T19:08:50+05:30

476 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements