import numpy as np
a = np.mat([[
1,2,
3],[
4,5,
6],[
7,8,
9]])
print
(a.t)
print
(a.swapaxes(0,
1))# 均輸出
# [[1 4 7]
# [2 5 8]
# [3 6 9]]
import numpy as np
a =[[1
,2,3
],[4
,5,6
],[7
,8,9
]]print
(np.transpose(a)
)# 輸出
# [[1 4 7]
# [2 5 8]
# [3 6 9]]
zip(a)
相當於打包,打包為元組的列表:
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> a = zip(a,b) # 打包為元組的列表
[(1, 4), (2, 5), (3, 6)]
>>> zip(a,c) # 元素個數與最短的列表一致
[(1, 4), (2, 5), (3, 6)]
>>> zip(*a) # 與 zip 相反,*a 可理解為解壓,返回二維矩陣式
[(1, 2, 3), (4, 5, 6)]
a =[[
1,2,
3],[
4,5,
6],[
7,8,
9]]print
(*a)
#[1, 2, 3] [4, 5, 6] [7, 8, 9]
#zip()返回的是乙個物件。如需展示列表,需手動 list() 轉換。
#print(zip(*a)) #
print
(list
(zip
(*a)))
# 輸出
# [(1, 4, 7), (2, 5, 8), (3, 6, 9)]
這裡python中星號(*)的作用是將變數中可迭代物件的元素拆解出來。
a =[[
1,2,
3],[
4,5,
6],[
7,8,
9]]#print(len(a)) #矩陣行數
#print(len(a[0])) #矩陣列數
b =[
[a[j]
[i]for j in
range
(len
(a))
]for i in
range
(len
(a[0])
)]print
(b)# 輸出
# [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
b = [[a[j][i] for j in range(len(a))] for i in range(len(a[0]))]
這句寫的清楚一點就是:
a =[[
1,2,
3],[
4,5,
6],[
7,8,
9]]#print(len(a)) #矩陣行數
#print(len(a[0])) #矩陣列數
for i in
range
(len
(a[0])
):#len(a[0])矩陣列數
for j in
range
(len
(a))
:#len(a)矩陣行數
#轉置就是a[i][j]和a[j][i]互換
a[j]
[i], a[i]
[j]= a[i]
[j], a[j]
[i]print
(a)# 輸出
# [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
因為轉置矩陣的對稱性,可以更省時間的寫成:
a =[[
1,2,
3],[
4,5,
6],[
7,8,
9]]#print(len(a)) #矩陣行數
#print(len(a[0])) #矩陣列數
for i in
range
(len
(a[0])
):#len(a[0])矩陣列數
for j in
range
(i,len
(a))
:#len(a)矩陣行數
#轉置就是a[i][j]和a[j][i]互換
a[j]
[i], a[i]
[j]= a[i]
[j], a[j]
[i]print
(a)# 輸出
# [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
a =[[
1,2,
3],[
4,5,
6],[
7,8,
9]]b=
for i in
range
(len
(a[0])
):#len(a[0])矩陣列數
temp =
for j in
range
(len
(a))
:#len(a)矩陣行數
[i])
print
(b)# 輸出
# [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
python實現轉置矩陣 用Python轉置矩陣?
轉置矩陣意味著我們將其列變為行。讓我們通過乙個例子來理解它,如果轉置後看起來像什麼。假設您有原始矩陣,例如 x 1,2 3,4 5,6 在上面的矩陣 x 中,我們有兩列,分別為1 3 5和2 4 6。因此,當我們在矩陣 x 上方轉置時,列變為行。因此,上面矩陣的轉置版本看起來像 x1 1,3,5 2...
用python實現矩陣轉置
前幾天群裡有同學提出了乙個問題 手頭現在有個列表,列表裡面兩個元素,比如 1,2 之後不斷的新增新的列表,往原來相應位置新增。例如新增 3,4 使原列表擴充為 1,3 2,4 再新增 5,6 擴充為 1,3,5 2,4,6 等等。其實不動腦筋的話,用個二重迴圈很容易寫出來 def trans m a...
Python 矩陣轉置
在讀時,會用到這麼的一段 image vector len np.prod image size 總元素大小,3 55 47 img image.open path arr img np.asarray img,dtype float64 arr img arr img.transpose 2,0,...