@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每行重复一次(在这种情况下,因为,所以行)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)