Open In App

Joining NumPy Array

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

NumPy provides various functions to combine arrays. In this article, we will discuss some of the major ones.

Method 1: Using numpy.concatenate()

The concatenate function in NumPy joins two or more arrays along a specified axis. 

Syntax:

numpy.concatenate((array1, array2, ...), axis=0)

The first argument is a tuple of arrays we intend to join and the second argument is the axis along which we need to join these arrays. Check out the following example showing the use of numpy.concatenate.

Python3




import numpy as np
  
array_1 = np.array([1, 2])
array_2 = np.array([3, 4])
  
array_new = np.concatenate((array_1, array_2))
print(array_new)


Output: 

[1 2 4 5]

By default, the value of the axis is set to 0. You can change it by specifying a value for the axis in the second argument. The following code joins two arrays along rows.

Python3




import numpy as np
  
array_1 = np.array([[1, 2], [3, 4]])
array_2 = np.array([[5, 6], [7, 8]])
  
array_new = np.concatenate((array_1, array_2), axis=1)
print(array_new)


Output:

[[1 2 5 6]
 [3 4 7 8]]

Method 2: Using numpy.stack()

The stack() function of NumPy joins two or more arrays along a new axis.

Syntax:

numpy.stack(arrays, axis=0)

The following code demonstrates the use of numpy.stack().

Python3




import numpy as np
  
array_1 = np.array([1, 2, 3, 4])
array_2 = np.array([5, 6, 7, 8])
  
array_new = np.stack((array_1, array_2), axis=1)
print(array_new)


Output:

[[1 5]
 [2 6]
 [3 7]
 [4 8]]

The arrays are joined along a new axis.

Method 3: numpy.block()

numpy.block is used to create nd-arrays from nested blocks of lists.

Syntax:

numpy.block(arrays)

The following example explains the working of numpy.block().

Python3




import numpy as np
  
block_1 = np.array([[1, 1], [1, 1]])
block_2 = np.array([[2, 2, 2], [2, 2, 2]])
block_3 = np.array([[3, 3], [3, 3], [3, 3]])
block_4 = np.array([[4, 4, 4], [4, 4, 4], [4, 4, 4]])
  
block_new = np.block([
    [block_1, block_2],
    [block_3, block_4]
])
  
print(block_new)


Output:

[[1 1 2 2 2]
 [1 1 2 2 2]
 [3 3 4 4 4]
 [3 3 4 4 4]
 [3 3 4 4 4]]

In this example, we assembled a block matrix( block_new ) from 4 separate 2-d arrays (block_1,block_2,block_3,block_4 ).



Last Updated : 01 Oct, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads