Open In App
Related Articles

Appending values at the end of an NumPy array

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

Let us see how to append values at the end of a NumPy array. Adding values at the end of the array is a necessary task especially when the data is not fixed and is prone to change. For this task, we can use numpy.append() and numpy.concatenate(). This function can help us to append a single value as well as multiple values at the end of the array. In this article, we will also see how to append elements to the NumPy array.

Appending Values at the End of an NumPy Array

Below are the ways by which we can append values at the end of a NumPy Array in Python:

  • Appending a Single Value to a 1D Array
  • Appending Another Array at the End of a 1D Array
  • Appending Values at the End Using Concatenation
  • Appending with a Different Array Type
  • Appending Using List Comprehension and numpy.concatenate
  • Appending Values at the End of the N-Dimensional Array

Appending a Single Value to a 1D Array

For a 1D array, using the axis argument is not necessary as the array is flattened by default.

python3

# importing the module
import numpy as np
 
# creating an array
arr = np.array([1, 8, 3, 3, 5])
print('Original Array : ', arr)
 
# appending to the array
arr = np.append(arr, [7])
print('Array after appending : ', arr)

                    

Output:

Original Array :  [1 8 3 3 5]
Array after appending : [1 8 3 3 5 7]

Appending Another Array at the End of a 1D Array

You may pass a list or an array to the append function, the result will be the same.

python3

# importing the module
import numpy as np
 
# creating an array
arr1 = np.array([1, 2, 3])
print('First array is : ', arr1)
 
# creating another array
arr2 = np.array([4, 5, 6])
print('Second array is : ', arr2)
 
# appending arr2 to arr1
arr = np.append(arr1, arr2)
print('Array after appending : ', arr)

                    

Output:

First array is :  [1 2 3]
Second array is : [4 5 6]
Array after appending : [1 2 3 4 5 6]

Appending Values at the End Using Concatenation

In this example, two 2D arrays, arr1 and arr2, are vertically stacked using np.concatenate() along the 0th axis, resulting in a combined 2D array.

Python3

# importing the module
import numpy as np
 
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])
 
combined = np.concatenate((arr1, arr2), axis=0)
print(combined)

                    

Output:

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

Appending with a Different Array Type

In this example, a 1D integer array arr and a 1D float array arr_float are appended together using np.append(), resulting in an upcasted float array as the output.

Python3

# importing the module
import numpy as np
 
arr = np.array([1, 2, 3])
arr_float = np.array([4.0, 5.0])
 
combined = np.append(arr, arr_float)
print(combined)  # Output: [1. 2. 3. 4. 5.]

                    

Output:

[1. 2. 3. 4. 5.]

Appending Using List Comprehension and numpy.concatenate

In this example, multiple arrays, including arr and two arrays from values_to_append, are concatenated using list comprehension and np.concatenate(), producing a single combined array.

Python3

# importing the module
import numpy as np
 
arr = np.array([1, 2, 3, 4, 5])
values_to_append = [np.array([6, 7]), np.array([8, 9])]
combined = np.concatenate([arr] + values_to_append)
print(combined)

                    

Output:

[1 2 3 4 5 6 7 8 9]

Appending Values at the End of the N-Dimensional Array

It is important that the dimensions of both the array matches otherwise it will give an error.

python3

# importing the module
import numpy as np
 
# create an array
arr = np.arange(1, 13).reshape(2, 6)
print('Original Array')
print(arr, '\n')
 
# create another array which is
# to be appended column-wise
col = np.arange(5, 11).reshape(1, 6)
print('Array to be appended column wise')
print(col)
arr_col = np.append(arr, col, axis=0)
print('Array after appending the values column wise')
print(arr_col, '\n')
 
# create an array which is
# to be appended row wise
row = np.array([1, 2]).reshape(2, 1)
print('Array to be appended row wise')
print(row)
arr_row = np.append(arr, row, axis=1)
print('Array after appending the values row wise')
print(arr_row)

                    

Output:

Original Array
[[ 1 2 3 4 5 6]
[ 7 8 9 10 11 12]]
Array to be appended column wise
[[ 5 6 7 8 9 10]]
Array after appending the values column wise
[[ 1 2 3 4 5 6]
[ 7 8 9 10 11 12]
[ 5 6 7 8 9 10]]
Array to be appended row wise
[[1]
[2]]
Array after appending the values row wise
[[ 1 2 3 4 5 6 1]
[ 7 8 9 10 11 12 2]]


Last Updated : 28 Dec, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads