In NumPy, the concatenate() function is used to join two or more arrays along an existing axis. To join a sequence of arrays along an axis (row/column). This function is used to join two or more arrays of the same shape along a specified axis. In this article, I will explain NumPy concatenate()
function syntax and usage with examples.
1. Quick Examples of NumPy concatenate() Function
If you are in a hurry, below are some quick examples of how to use Python NumPy concatenate() function.
# Quick examples of numpy concatenate()
# Example 1: Use np.concatenate() function
con = np.concatenate((arr, arr1))
# Example 2: Use Joining the two arrays along axis 0
con = np.concatenate((arr, arr1), axis = 0)
# Example 3: Use Joining the two arrays along axis 1
con = np.concatenate((arr, arr1), axis = 1)
# Example 4: Use Joining the two arrays along axis=None
con = np.concatenate((arr, arr1), axis = None)
2. NumPy concatenate() Syntax
Following is the syntax of the concatenate() function.
# numpy.concatenate() syntax
numpy.concatenate((arr, arr1, ...), axis=0, out=None)
arr,arr1
: a sequence of array_like. The arrays must have the same shape, except in the dimension corresponding to the axis (the first, by default).axis
: Axis along which arrays will be joined. The default is 0, indicating that the arrays will be concatenated along the first axis. If you specify a different axis, the arrays must have the same shape along that axis.out
: If provided, the result will be placed into this array. It must be of the appropriate shape and dtype.
2.2 Return value
It returns the concatenated array.
3. Use numpy.concatenate() Method
Use numpy.concatenate()
to put the content of two or more arrays into a single array. This function takes several arguments along with the NumPy arrays to concatenate and returns a Numpy array ndarray. If the axis is not passed; it is taken as 0.
You can use the np.concatenate()
function to concatenate two 2D arrays along the default axis (axis=0). For instance, arr
and arr1
are concatenated along the default axis (axis=0), resulting in a new array where the rows of arr1
are appended to the rows of arr
.
# Import numpy
import numpy as np
# Create 2D input array
arr = np.array([[4, 6], [9, 13]])
arr1 = np.array([[8, 3], [12, 19]])
# Use np.concatenate() function
con = np.concatenate((arr, arr1))
print("Concatenate two arrays:\n",con)
Yields below output.
4. Use Joining the Two Arrays along Axis = 0
If you want to join the two arrays along axis 0 using the np.concatenate()
function, you can use the default axis value (axis=0). In this case, arr
and arr1
are concatenated along the default axis (axis=0), resulting in a new array where the rows of arr1
are appended to the rows of arr
.
You can join two NumPy arrays row-wise by specifying axis=0
. Now the resulting array is a wide matrix with more columns than rows; follow the below example, 4 rows, and 2 columns.
# Create 2D input array
arr = np.array([[4, 6], [9, 13]])
arr1 = np.array([[8, 3], [12, 19]])
# Use Joining the two arrays along axis 0
con = np.concatenate((arr, arr1), axis = 0)
print("Concatenate along axis 0:\n", con)
Yields the same output as above.
5. Use Joining the Two Arrays along Axis = 1
If you want to join the two arrays along axis 1 using the np.concatenate()
function, you can specify axis=1
. In this case, arr
and arr1
are concatenated along axis 1, resulting in a new array where the columns of arr1
are appended to the columns of arr
.
To join two NumPy arrays column-wise by specifying axis=1
. Now the resulting array is a wide matrix with more columns than rows.
# Create 2D input array
arr = np.array([[4, 6], [9, 13]])
arr1 = np.array([[8, 3], [12, 19]])
# Use Joining the two arrays along axis 1
con = np.concatenate((arr, arr1), axis = 1)
print("Concatenate along axis 1:\n", con)
Yields below output.
# Output:
Concatenate along axis 1:
[[ 4 6 8 3]
[ 9 13 12 19]]
6. Use numpy.concatenate() with Axis=None
To using the np.concatenate
function to concatenate the two arrays arr
and arr1
along axis=None. When axis=None
, the arrays are flattened before concatenation. In this output, the arrays arr
and arr1
are flattened before concatenation, resulting in a 1D array containing all the elements from both arrays.
# Create 2D input array
arr = np.array([[4, 6], [9, 13]])
arr1 = np.array([[8, 3], [12, 19]])
# Use joining the two arrays along axis=None
con = np.concatenate((arr, arr1), axis = None)
print("Concatenate along axis None:\n", con)
Yields below output.
# Output:
Concatenate along axis None:
[ 4 6 9 13 8 3 12 19]
Frequently Asked Questions
The numpy.concatenate()
function is used to concatenate (join) two or more arrays along a specified axis.
You cannot use axis=None
with numpy.concatenate()
. The axis
parameter in the numpy.concatenate()
function must be an integer or a tuple of integers, specifying the axis along which the arrays will be concatenated.
To concatenate arrays along the rows (axis=0), you can use the numpy.concatenate()
function with the default value for the axis
parameter (which is 0).
The arrays must have the same shape along the specified axis (except for the dimension along that axis). If shapes are not compatible, a ValueError
will be raised.
You can use numpy.stack()
for concatenating along a new axis. For vertical stacking, numpy.vstack()
and for horizontal stacking, numpy.hstack()
can also be used.
You can concatenate more than two arrays by providing them as a tuple in the numpy.concatenate()
function, like this: numpy.concatenate((arr1, arr2, arr3), axis=0)
.
Conclusion
In this article, I have explained how to use the NumPy concatenate()
function to join two or more arrays into a single Numpy array with examples.
Happy Learning!!
Related Articles
- How to concatinate Array?
- How to append NumPy array?
- NumPy concatenate() Function
- How to sort elements of NumPy?
- Python NumPy round() Array Function
- How to create NumPy array in different ways?
- Python NumPy hstack Function
- Python NumPy Interpolate Function
- Python NumPy Reverse Array
- How to get Diagonal of NumPy Array Using diag()