Python 如何复制一个NumPy数组以形成一个新数组,其中包含原始数组的几行?
我想通过将另一个数组复制几行来创建一个NumPy数组。我做的如下所示。有更简单的方法吗Python 如何复制一个NumPy数组以形成一个新数组,其中包含原始数组的几行?,python,numpy,Python,Numpy,我想通过将另一个数组复制几行来创建一个NumPy数组。我做的如下所示。有更简单的方法吗 >>> a = np.arange(0,10) >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> b = tuple( a for _ in range(3) ) >>> b (array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]), array([0, 1, 2, 3,
>>> a = np.arange(0,10)
>>> a
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> b = tuple( a for _ in range(3) )
>>> b
(array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]), array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]), array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]))
>>> c = np.vstack( b )
>>> c
array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]])
我找到了一个办法。在这里分享
>>> a
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> a[None,:]
array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]])
>>> np.repeat( a[None,:], 3, axis=0 )
array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]])
np.broadcast\u to(a,(3,a.shape[0]))