python numpy 矩陣的複製和重複

2021-09-11 02:54:41 字數 1006 閱讀 5971

repeat函式功能:對陣列中的元素進行連續重複複製

用法有兩種:

1) numpy.repeat(a, repeats, axis=none)

2) a.repeat(repeats, axis=none)

self.user_emb.shape

out[16]: (512,)

目標shape(13214, 512)

#先增加乙個維度

user_emb_dims = np.expand_dims(self.user_emb, axis=0)

user_emb_dims.shape

out[18]: (1, 512)

#然後再對矩陣進行重複

user_emb_arr = np.repeat(user_emb_dims, 13214, axis=0)

user_emb_arr.shape

out[20]: (13242, 512)

# 時間 0.017989158630371094

# 方法二:

user_emb_arr2 = user_emb_dims.repeat(13242, axis=0)

tile函式功能:對整個陣列進行複製拼接

用法:numpy.tile(a, reps)

其中a為陣列,reps為重複的次數

user_emb_arr4 = np.tile(user_emb_dims,(13242,1))

>>> a=np.array([10,20])

>>>a

array([10,20])

>>>np.tile(a, (3,2)) #構造3*2個copy

array([[10, 20, 10, 20],

[10, 20, 10, 20],

[10, 20, 10, 20]])

---------------------

原文:

參考文章:

Python numpy的矩陣計算

import numpy as np def numpywork1 矩陣的求和運算 one np.array 1,0,1,3,4,1 2,1,4,2,3,0 3,5,4,1,3,2 2,6,3,1,3,8 9,1,2,1,5,0 two np.sum one,axis 0 每一列求和,得到的新矩陣 ...

python numpy 矩陣堆疊

在實際操作中,遇到了矩陣堆疊的操作,本來想著自己寫乙個函式,後來想,應該有庫函式,於是一陣找尋 import numpy as np a np.array 1,2,3 b np.array 4,5,6 np.stack a,b 預設行堆疊 輸出 array 1,2,3 4,5,6 np.vstack...

python numpy 矩陣運算

轉置np.transpose x 乘np.dot x,y a.dot b dot c 逆np.linalg.inv x 轉為1維 a.flatten 除 就是乘矩陣的逆a b a.dot np.linalg.inv b 刪除一列axis 1 行axis 0 np.delete t1,j,axis 0...