python numpy 矩阵的复制和重复

版权声明:原创部分都是自己总结的,如果转载请指明出处。觉得有帮助的老铁,请双击666! https://blog.csdn.net/qq_36387683/article/details/87710821

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)
时间: 0.01998972892761230

tile函数功能:对整个数组进行复制拼接

用法:numpy.tile(a, reps)

其中a为数组,reps为重复的次数

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

时间: 0.020986557006835938


>>> 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]]) 
--------------------- 
作者:悟乙己 
来源:CSDN 
原文:https://blog.csdn.net/sinat_26917383/article/details/52290505 
版权声明:本文为博主原创文章,转载请附上博文链接!

参考文章:https://blog.csdn.net/sinat_26917383/article/details/52290505

猜你喜欢

转载自blog.csdn.net/qq_36387683/article/details/87710821