np.repeat操作!!!

numpy.repeat(a,repeats,axis=None);

参数:

 axis=None,时候就会flatten当前矩阵,实际上就是变成了一个行向量

 axis=0,增加行数,列数不变

 axis=1,增加列数,行数不变

  repeats 复制次数或者按照特定方式复制

c = np.array(([1,2],[3,4],[4,5]))
f = np.repeat(c,3)
print(f)
print('c形状:',c.shape)
[1 1 1 2 2 2 3 3 3 4 4 4 4 4 4 5 5 5]
c形状: (3, 2)
d=np.repeat(c,[2,3],axis=1)#对行操作,增加的是列,一行2个元素,[2,3]就是2个元素(行不变,列变:第一列复制2次,第二列复制3次)
print(d)
print('d形状:',d.shape)
[[1 1 2 2 2]
 [3 3 4 4 4]
 [4 4 5 5 5]]
d形状: (3, 5)

e=np.repeat(c,[2,3,4],axis=0)#对列操作增加的是行,一列3个元素,[2,3,4]就是3个元素(列不变,行变:第一行复制2次,第二行复制3次,第三行复制3次)
print(e)
print('e形状:',e.shape)
[[1 2]
 [1 2]
 [3 4]
 [3 4]
 [3 4]
 [4 5]
 [4 5]
 [4 5]
 [4 5]]
e形状: (9, 2)
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐