Numpy Append Row
Numpy is a powerful library in Python that provides support for large multi-dimensional arrays and matrices, along with a collection of mathematical functions to operate on these arrays. One of the most common operations that you might want to perform on a numpy array is appending a row. This article will provide a detailed guide on how to append a row to a numpy array.
Basic Syntax
The basic syntax for appending a row to a numpy array is as follows:
numpy.append(arr, values, axis=None)
Here, arr
is the input array, values
are the values to be appended, and axis
is the axis along which values are appended. If axis
is not provided, both arr
and values
are flattened before use.
Appending a Row to a 1D Array
Let’s start with a simple example where we have a 1D numpy array and we want to append a single value to it.
import numpy as np
arr = np.array([1, 2, 3])
value = np.array([4])
new_arr = np.append(arr, value)
print(new_arr)
Output:
In this example, we have a numpy array arr
with values [1, 2, 3]
and we want to append the value 4
to it. The np.append()
function is used to append the value to the array.
Appending a Row to a 2D Array
Appending a row to a 2D array is slightly more complex than appending a value to a 1D array. Let’s see an example:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
row = np.array([[7, 8, 9]])
new_arr = np.append(arr, row, axis=0)
print(new_arr)
Output:
In this example, we have a 2D numpy array arr
with two rows [1, 2, 3]
and [4, 5, 6]
. We want to append a new row [7, 8, 9]
to it. The np.append()
function is used to append the row to the array. Note that we need to specify axis=0
to indicate that we want to append the row along the first axis (i.e., the row axis).
Appending Multiple Rows to a 2D Array
We can also append multiple rows to a 2D array at once. Here is an example:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
rows = np.array([[7, 8, 9], [10, 11, 12]])
new_arr = np.append(arr, rows, axis=0)
print(new_arr)
Output:
In this example, we have a 2D numpy array arr
with two rows [1, 2, 3]
and [4, 5, 6]
. We want to append two new rows [7, 8, 9]
and [10, 11, 12]
to it. The np.append()
function is used to append the rows to the array.
Appending a Row to a 3D Array
Appending a row to a 3D array is similar to appending a row to a 2D array, but we need to be careful with the shape of the row to be appended. Here is an example:
import numpy as np
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])
row = np.array([[[13, 14, 15], [16, 17, 18]]])
new_arr = np.append(arr, row, axis=0)
print(new_arr)
Output:
In this example, we have a 3D numpy array arr
with two 2D arrays as its elements. Each 2D array has two rows. We want to append a new 2D array [[13, 14, 15], [16, 17, 18]]
to it. The np.append()
function is used to append the 2D array to the 3D array.
Appending a Row with Different Data Types
Numpy arrays can also contain elements of different data types. Here is an example of appending a row with different data types to a numpy array:
import numpy as np
arr = np.array([['numpyarray.com', '1'], ['numpyarray.com', '2']], dtype='object')
row = np.array([['numpyarray.com', '3']], dtype='object')
new_arr = np.append(arr, row, axis=0)
print(new_arr)
Output:
In this example, we have a 2D numpy array arr
with two rows ['numpyarray.com', '1']
and ['numpyarray.com', '2']
. We want to append a new row ['numpyarray.com', '3']
to it. The np.append()
function is used to append the row to the array.
Numpy Append Row Conclusion
In this article, we have learned how to append a row to a numpy array using the np.append()
function. We have seen examples of appending a row to a 1D array, a 2D array, and a 3D array. We have also seen how to append multiple rows at once and how to append a row with different data types. I hope this article has been helpful for you to understand how to append a row to a numpy array.