import numpy as np
import random
l1 = random.sample(range(1, 10), 5) # 隨機生成20個1-100中不重複的數字
print(l1)
# 一維向量變矩陣時不能直接用transpose或者.t的形式
l1 = np.mat(l1).t # 將生成的向量l1進行轉置,並使其成為矩陣
print(l1)
結果為:
[3, 6, 7, 8, 5]
[[3]
[6][7]
[8][5]]
將高維矩陣進行轉置
l2 = np.array([[1, 2, 3, 4, 5],
[6, 7, 8, 9, 10],
[11, 12, 13, 14, 15]])
print(l2)
l2 = np.transpose(l2)
print(l2)
結果為:
[[ 1 2 3 4 5]
[ 6 7 8 9 10]
[11 12 13 14 15]]
[[ 1 6 11]
[ 2 7 12]
[ 3 8 13]
[ 4 9 14]
[ 5 10 15]]
然後將兩矩陣在行上進行合併
l3 = np.hstack((l1, l2)) # 在行上進行合併,列上合併用 np.vstack
print(l3)
結果為:
[[ 8 1 6 11]
[ 1 2 7 12]
[ 7 3 8 13]
[ 6 4 9 14]
[ 4 5 10 15]]
知識點補充:
1、矩陣的合併
np.hstack((a,b)) # hstack()在行上合併
np.vstack((a,b)) # vstack()在列上合併
2、超過一維時,下面兩種方法在轉置的時候等價
l2 = np.transpose(l2)
l2 = l2.t
給numpy矩陣新增一行或一列
import numpy as npa np.array 1,2,3 4,5,6 7,8,9 b np.array 0,0,0 c np.r a,b d np.c a,b.t print cprint d 1 2 3 4 5 6 7 8 9 0 0 0 1 2 3 0 4 5 6 0 7 8 9 0...
二維矩陣與二維矩陣之間的卷積
最近在學習數字影象處理 digital image processing,dip 這門課,感覺有些吃力。由於在數字訊號處理 digital singal processing,dsp 這門課中只學了一維矩陣之間的卷積運算。假設我們的卷積核h為kernel矩陣 33 待處理矩陣f x,y 為 55 h...
去除重複行或列的一些sql語句
蒐集起來留著以後用吧 查詢結果有兩條完全相同的行,用distinct select distinct from table 表名 where 條件 存在部分字段相同的紀錄 但是有有主鍵id,即唯一鍵 如果是這種情況的話用distinct是過濾不了的,這就要用到主鍵id的唯一性特點及group by分...