Problem: Write a program in Python to output transpose a matrix.

Example:

matrix    =   [[1,2,3],
               [4,5,6]]

transpose =   [[1,4],
               [2,5],
               [3,6]]

In python, we represent a matrix using a nested list. For example matrix = [[1,2,3],[4,5,6]] represent a matrix of order 2×3, in which matrix[i][j] is the matrix element at ith row and jth column.

To transpose a matrix we have to interchange all its row elements into column elements and column elements into row elements.

To do that we first need to initialize a transpose matrix of order columns*rows (of the original matrix) with zero, then loop through each element of the original matrix and assign the element to the transpose matrix as transpose[j][i] = matrix[i][j]

Let’s see the source code in python to transpose a matrix.

matrix    =   [[1,2,3],
               [4,5,6]]

transpose =   [[0,0],
               [0,0],
               [0,0]]
               
for i in range(len(matrix)):
    for j in range(len(matrix[0])):
        transpose[j][i] = matrix[i][j]
        
print(transpose)

Output:

[[1, 4], [2, 5], [3, 6]]

In the above program, len(matrix) returns the count of rows and len(matrix[0]) returns the count of columns in the matrix.

Leave a Reply