Python矩陣逆轉與轉置
阿新 • • 發佈:2018-11-06
numpy實現
import numpy as np np.transpose([list]) # 矩陣轉置 np.transpose([list]).tolist() # 矩陣轉list
>>> import numpy as np >>> np.transpose([[1, 2, 3], [1, 2, 3], [1, 2, 3]]) array([[1, 1, 1], [2, 2, 2], [3, 3, 3]]) >>> np.transpose([[1, 2, 3], [1, 2, 3], [1, 2, 3]]).tolist() [[1, 1, 1], [2, 2, 2], [3, 3, 3]]
矩陣轉置
矩陣的轉置就是從行變成列, 列變成行
用zip將一系列可迭代物件中的元素打包為元組,之後將這些元組放置在列表中,兩步加起來等價於行列轉置。
# 矩陣的轉置
def transpose(list1):
return [list(row) for row in zip(*list1)]
list1 = [[1, 4], [2, 5], [3, 6]]
print(transpose(list1)) # [[1, 2, 3], [4, 5, 6]]
# 矩陣逆轉 def invert(list1): return [row[::-1] for row in list1] list1 = [[1, 4], [2, 5], [3, 6]] print(invert(list1)) # [[4, 1], [5, 2], [6, 3]]
矩陣逆轉
取出每行的元素,逆序索引遍歷 = 左右翻轉。