numpy.tile
numpy.tile(a, rep)
Функция tile() создает массив повторением указанного массива a заданным количеством раз.
-
- a - подобный массиву объект
- Любой объект который может быть преобразован в массив NumPy.
- rep - целое число или подобный массиву объект
- Последовательность целых чисел, которые задают повторение массива a вдоль каждой оси.
-
- ndarray - массив NumPy
- Массив образованный путем повторения указанного массива a.
Замечание
Данная функция может использоваться для транслирования массивов относительно друг друга, тем не менее, настоятельно рекомендуется использовать для этих целей специальные операции и функции транслирования NumPy.
Если длинна массива в параметре rep т.е. len(rep) больше количества осей массива a, то результирующий массив будет иметь размерность равную len(rep), в противном случае размерность не изменится.
Для согласования количества осей массива a и длинны массива в параметре rep, к массиву a могут добавляться единичные оси слева, если a.ndim < len(rep) или единицы слева к массиву rep если a.ndim > len(rep).
Примеры
>>> import numpy as np
>>>
>>> a = np.array([1, 2])
>>>
>>> np.tile(a, 2)
array([1, 2, 1, 2])
>>>
>>> np.tile(a, [2, 2])
array([[1, 2, 1, 2],
[1, 2, 1, 2]])
>>>
>>> np.tile(a, [2, 2, 2])
array([[[1, 2, 1, 2],
[1, 2, 1, 2]],
[[1, 2, 1, 2],
[1, 2, 1, 2]]])
>>>
>>> b = np.array([[0, 2], [3, 5]])
>>> b
array([[0, 2],
[3, 5]])
>>>
>>> np.tile(b, 3)
array([[0, 2, 0, 2, 0, 2],
[3, 5, 3, 5, 3, 5]])
>>>
>>> np.tile(b, [1, 3])
array([[0, 2, 0, 2, 0, 2],
[3, 5, 3, 5, 3, 5]])
>>>
>>> np.tile(b, [3, 1])
array([[0, 2],
[3, 5],
[0, 2],
[3, 5],
[0, 2],
[3, 5]])
>>>
>>>
>>> c = np.array([[1], [2], [3]])
>>> c
array([[1],
[2],
[3]])
>>>
>>> np.tile(c, 5)
array([[1, 1, 1, 1, 1],
[2, 2, 2, 2, 2],
[3, 3, 3, 3, 3]])
>>>
>>> np.tile(c, [2, 1])
array([[1],
[2],
[3],
[1],
[2],
[3]])
>>>
>>> np.tile(c, [2, 2, 2])
array([[[1, 1],
[2, 2],
[3, 3],
[1, 1],
[2, 2],
[3, 3]],
[[1, 1],
[2, 2],
[3, 3],
[1, 1],
[2, 2],
[3, 3]]])