NumPy | insert method
Start your free 7-days trial now!
Numpy's insert(~)
method returns a new Numpy array with the specified values inserted.
Parameters
1. a
| array-like
The source array.
2. obj
| slice
or int
or array
of int
The subset of indices to insert along the specified axis.
3. values
| array-like
The values to insert into the source array.
4. axis
| int
| optional
The axis along which to perform the deletion. For 2D arrays, the allowed values and their meaning are:
Axis | Meaning |
---|---|
0 | Insert rows |
1 | Insert columns |
None | Insert into a flattened array |
By default, the axis=None
.
Return value
A new Numpy array with the specified values inserted.
Examples
Inserting into a 1D array
To insert the value 8 at index 1:
a = np.array([4,5,6])np.insert(a, 1, 8)
array([4, 8, 5, 6])
Inserting to a flattened 2D array
Consider the following 2D array:
a = np.array([[3,4],[5,6]])a
array([[3, 4], [5, 6]])
Inserting a single value
To insert into the flattened version of the array:
np.insert(a, 1, 9)
array([3, 9, 4, 5, 6])
Here, we're inserting the value 9 at index 1 of the flattened version of a
.
Inserting multiple values
To insert multiple values into the flattened version of the array:
np.insert(a, [0,3], [8,9])
array([8, 3, 4, 5, 9, 6])
Here, we're inserting the values 8 and 9 into indices 0 and 3.
Inserting rows to a 2D array
Inserting a single row
Consider the following:
a = np.array([[3,4],[5,6]])a
array([[3, 4], [5, 6]])
To insert a single row at index 1:
np.insert(a, 1, [8,9], axis=0) # axis=0 represents row-insertion
array([[ 3, 4], [ 8, 9], [ 5, 6]])
Inserting multiple rows
Consider the following:
a = np.array([[3,4],[5,6]])a
array([[3, 4], [5, 6]])
To insert two distinct rows at index 0 and 1:
np.insert(a, [0,1], [[10,11],[12,13]], axis=0)
array([[10, 11], [ 3, 4], [12, 13], [ 5, 6]])
Notice how the row [12,13]
is added to the 1st index of the original array.
Inserting columns to a 2D array
Inserting a single column
Consider the following:
a = np.array([[3,4],[5,6]])a
array([[3, 4], [5, 6]])
To insert a single column at index 1:
np.insert(a, 1, [8,9], axis=1) # axis=1 represents column-insertion
array([[ 3, 8, 4], [ 5, 9, 6]])
Inserting multiple columns
Consider the following:
a = np.array([[3,4],[5,6]])a
array([[3, 4], [5, 6]])
To insert two distinct columns at index 0 and 2:
np.insert(a, [0,2], [[10,11],[12,13]], axis=1) # axis=1 represents column-insertion
array([[10, 3, 4, 11], [12, 5, 6, 13]])