重复数组n次[重复]

问题描述 投票:0回答:2

这个问题在这里已有答案:

我有一个numpy.ndarrayTrue / False

import numpy as np    
a = np.array([True, True, False])

我想要:

out = np.array([True, True, False, True, True, False, True, True, False])

我试过了:

np.repeat(a, 3, axis = 0)

但它复制了每个元素,我想复制所有数组。

这是我得到的结果:

np.array([a for i in range(3)])

但是,我希望它保持为1D。

Edit

它被认为是Repeating each element of a numpy array 5 times的副本。但是,我的问题是如何重复所有数组而不是每个元素。

python numpy repeat
2个回答
2
投票

使用np.tile

>>> a = np.array([True, True, False])
>>> np.tile(a, 3)
... array([ True,  True, False,  True,  True, False,  True,  True, False])

1
投票

尝试:

import numpy as np
a = np.array([True, True, False])
print(np.concatenate([a]*3))

[ True  True False  True  True False  True  True False]