用Python转置矩阵?

转置矩阵意味着我们将其列变为行。让我们通过一个例子来理解它,如果转置后看起来像什么。

假设您有原始矩阵,例如-

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

在上面的矩阵“ x”中,我们有两列,分别为1、3、5和2、4、6。

因此,当我们在矩阵“ x”上方转置时,列变为行。因此,上面矩阵的转置版本看起来像-

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

因此,我们有另一个矩阵“ x1”,在不同的位置以不同的值组织不同。

以下是在python中完成此操作的几种方法-

方法1-使用嵌套循环进行矩阵转置-

#Original Matrixx = [[1,2],[3,4],[5,6]]result = [[0, 0, 0], [0, 0, 0]]# Iterate through rowsfor i in range(len(x)):   #Iterate through columns   for j in range(len(x[0])):      result[j][i] = x[i][j]   for r in Resultprint(r)

结果

[1, 3, 5]

[2, 4, 6]

方法2-使用嵌套列表理解的矩阵转置。

#Original Matrixx = [[1,2],[3,4],[5,6]]result = [[x[j][i] for j in range(len(x))] for i in range(len(x[0]))]for r in Result   print(r)

结果

[1, 3, 5]

[2, 4, 6]

列表理解使我们能够编写简洁的代码,应在python中经常使用。

方法3-使用Zip进行矩阵转置

#Original Matrixx = [[1,2],[3,4],[5,6]]result = map(list, zip(*x))for r in Result   print(r)

结果

[1, 3, 5]

[2, 4, 6]

方法4-使用numpy库进行矩阵转置Numpy库是为有效处理大型多维数组而构建的数组处理程序包。

import numpy#Original Matrixx = [[1,2],[3,4],[5,6]]print(numpy.transpose(x))

结果

[[1 3 5]

[2 4 6]]

以上是 用Python转置矩阵? 的全部内容, 来源链接: utcz.com/z/327120.html

回到顶部