NumPy tile() | Programiz D11 Phase 2 Skip to main content

NumPy tile()

In this tutorial, we will learn about the numpy.tile() method with the help of examples.

The tile() method constructs an array by repeating arrays.

Example

import numpy as np

# create an array
array1 = np.array([0, 1, 2, 3, 4])

# create an array by repeating array1 3 times array2 = np.tile(array1, 3)
print(array2) # Output: [0 1 2 3 4 0 1 2 3 4 0 1 2 3 4]

tile() Syntax

The syntax of tile() is:

numpy.tile(array, repetitions)

tile() Arguments

The tile() method takes two arguments:

  • array - an array with elements to repeat
  • repetitions - number of times the array repeats

tile() Return Value

The tile() method returns a new array with repetition of the input array.


Example 1: Tile a 1-D Array

import numpy as np

# create an array
array1 = np.array([0, 1])

# tile array1 3 times array2 = np.tile(array1, 3) # tile array1 2 times in axis-0 and 3 times in axis-1 array3 = np.tile(array1, (2, 3))
print('1-D tile:\n', array2) print('2-D tile:\n', array3)

Output

1-D tile:
[0 1 0 1 0 1]
2-D tile:
 [[0 1 0 1 0 1]
 [0 1 0 1 0 1]]

In the following code segment

array3 = np.tile(array1,(2, 3))

the tuple (2, 3) indicates that array1 is repeated 2 times along axis 0 and 3 times along axis 1. This results in a 2-dimensional array with the repeated pattern.

Note: np.tile(array1, 0) removes all elements from an array.


Example 2: Tile a 2-D Array

We can tile a 2-D array similar to a 1-D array.

import numpy as np

# create an array
array1 = np.array(
    [[0, 1, 2], 
    [3, 4, 5]])

# tile twice array2 = np.tile(array1, 2) # tile twice on axis-0 and thrice on axis-1 array3 = np.tile(array1, (2,3)) # tile twice in each axis to make a 3-D array array4 = np.tile(array1, (2, 2, 2))
print('\nTile with 2 repetitions:\n',array2) print('\nTile with (2,3) repetitions:\n',array3) print('\nTile to make a 3-D array:\n',array4)

Output

Tile with 2 repetitions:
[[0 1 2 0 1 2]
 [3 4 5 3 4 5]]

Tile with (2,3) repetitions:
 [[0 1 2 0 1 2 0 1 2]
 [3 4 5 3 4 5 3 4 5]
 [0 1 2 0 1 2 0 1 2]
 [3 4 5 3 4 5 3 4 5]]

Tile to make a 3-D array:
 [[[0 1 2 0 1 2]
  [3 4 5 3 4 5]
  [0 1 2 0 1 2]
  [3 4 5 3 4 5]]

 [[0 1 2 0 1 2]
  [3 4 5 3 4 5]
  [0 1 2 0 1 2]
  [3 4 5 3 4 5]]]

Note: np.tile() is similar to np.repeat(), with the main difference being that tile() repeats arrays whereas repeat() repeats individual elements of the array.