numpy基础——numpy.tile

来源:互联网 发布:广州软件开发工资 编辑:程序博客网 时间:2024/05/29 14:37

numpy.tile

numpy.tile(A, reps)

Construct an array by repeating A the number of times given by reps.

构造一个数组,通过重复数组 A,重复的次数由 reps 给出。


If reps has length d, the result will have dimension of max(d, A.ndim).

If A.ndim < d, A is promoted to be d-dimensional by prepending new axes. So a shape (3,) array is promoted to (1, 3) for 2-D replication, or shape (1, 1, 3) for 3-D replication. If this is not the desired behavior, promote A to d-dimensions manually before calling this function.

If A.ndim > d, reps is promoted to A.ndim by pre-pending 1’s to it. Thus for an A of shape (2, 3, 4, 5), a reps of (2, 2) is treated as (1, 1, 2, 2).


Note : Although tile may be used for broadcasting, it is strongly recommended to use numpy’s broadcasting operations and functions.


Parameters:

A : array_like
The input array.

reps : array_like
The number of repetitions of A along each axis.

axis 轴

Returns:

c : ndarray

The tiled output array.


Examples

>>> a = np.array([0, 1, 2])>>> np.tile(a, 2)array([0, 1, 2, 0, 1, 2])>>> np.tile(a, (2, 2))array([[0, 1, 2, 0, 1, 2],       [0, 1, 2, 0, 1, 2]])>>> np.tile(a, (2, 1, 2))array([[[0, 1, 2, 0, 1, 2]],       [[0, 1, 2, 0, 1, 2]]])>>> b = np.array([[1, 2], [3, 4]])>>> np.tile(b, 2)array([[1, 2, 1, 2],       [3, 4, 3, 4]])>>> np.tile(b, (2, 1))array([[1, 2],       [3, 4],       [1, 2],)>>> c = np.array([1,2,3,4])>>> np.tile(c,(4,1))array([[1, 2, 3, 4],       [1, 2, 3, 4],       [1, 2, 3, 4],       [1, 2, 3, 4]])

reps的数字从后往前分别对应A的第N个维度的重复次数。如tile(A,2)表示A的第一个维度重复2遍,tile(A,(2,3))表示A的第一个维度重复3遍,然后第二个维度重复2遍,tile(A,(2,2,3))表示A的第一个维度重复3遍,第二个维度重复2遍,第三个维度重复2遍。