调整大小和拉伸NumPy数组

调整大小和拉伸NumPy数组,第1张

调整大小和拉伸NumPy数组

@KennyTM的答案非常巧妙,确实适用于您的情况,但作为替代方案,可以为扩展数组提供更多的灵活性try

np.repeat

>>> a = np.array([[1, 5, 9],   [2, 7, 3],   [8, 4, 6]])>>> np.repeat(a,2, axis=1)array([[1, 1, 5, 5, 9, 9],       [2, 2, 7, 7, 3, 3],       [8, 8, 4, 4, 6, 6]])

因此,这完成了沿一个轴的重复,以使其沿多个轴(如您所愿),只需嵌套

np.repeat
调用:

>>> np.repeat(np.repeat(a,2, axis=0), 2, axis=1)array([[1, 1, 5, 5, 9, 9],       [1, 1, 5, 5, 9, 9],       [2, 2, 7, 7, 3, 3],       [2, 2, 7, 7, 3, 3],       [8, 8, 4, 4, 6, 6],       [8, 8, 4, 4, 6, 6]])

您还可以更改任何初始行或列的重复次数。例如,如果您希望除最后一行外每行重复两次:

>>> np.repeat(a, [2,2,1], axis=0)array([[1, 5, 9],       [1, 5, 9],       [2, 7, 3],       [2, 7, 3],       [8, 4, 6]])

在这里,当第二个参数是a时,

list
它指定
axis=0
每行重复一次(在这种情况下,因为,所以行)。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5630794.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存