Open In App

numpy.insert() in Python

Last Updated : 28 Mar, 2022
Comments
Improve
Suggest changes
Like Article
Like
Report

The numpy.insert() function inserts values along the mentioned axis before the given indices. Syntax : 

numpy.insert(array, object, values, axis = None)

Parameters : 

array   : [array_like]Input array. 
object  : [int, array of ints]Sub-array with the index or indices before 
     which values is inserted
values  : [array_like]values to be added in the arr. Values should be 
     shaped so that arr[...,obj,...] = values. If the type of values is different from 
     that of arr, values is converted to the type of arr
axis    : Axis along which we want to insert the values. By default, it 
     object is applied to flattened array    

Return : 

An copy of array with values being inserted as per the mentioned object along a given axis. 

Code 1 : Deletion from 1D array 

Python
# Python Program illustrating
# numpy.insert()

import numpy as geek

#Working on 1D
arr = geek.arange(5)
print("1D arr : \n", arr)
print("Shape : ", arr.shape)

# value = 9
# index = 1   
# Insertion before first index
a = geek.insert(arr, 1, 9)
print("\nArray after insertion : ", a)
print("Shape : ", a.shape)


# Working on 2D array 
arr = geek.arange(12).reshape(3, 4)
print("\n\n2D arr : \n", arr)
print("Shape : ", arr.shape)

a = geek.insert(arr, 1, 9, axis = 1)
print("\nArray after insertion : \n", a)
print("Shape : ", a.shape)

Output : 

1D arr : 
 [0 1 2 3 4]
Shape :  (5,)

Array after insertion :  [0 9 1 2 3 4]
Shape :  (6,)


2D arr : 
 [[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
Shape :  (3, 4)

Array after insertion : 
 [[ 0  9  1  2  3]
 [ 4  9  5  6  7]
 [ 8  9  9 10 11]]
Shape :  (3, 5)

Code 2 : Working with Scalars 

Python
# Python Program illustrating
# numpy.insert()

import numpy as geek

# Working on 2D array 
arr = geek.arange(12).reshape(3, 4)
print("2D arr : \n", arr)
print("Shape : ", arr.shape)

# Working with Scalars
a = geek.insert(arr, [1], [[6],[9],], axis = 0)
print("\nArray after insertion : \n", a)
print("Shape : ", a.shape)

# Working with Scalars
a = geek.insert(arr, [1], [[8],[7],[9]], axis = 1)
print("\nArray after insertion : \n", a)
print("Shape : ", a.shape)

Output : 

2D arr : 
 [[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
Shape :  (3, 4)

Array after insertion : 
 [[ 0  1  2  3]
 [ 6  6  6  6]
 [ 9  9  9  9]
 [ 4  5  6  7]
 [ 8  9 10 11]]
Shape :  (5, 4)

Array after insertion : 
 [[ 0  8  1  2  3]
 [ 4  7  5  6  7]
 [ 8  9  9 10 11]]
Shape :  (3, 5)

Code 3 : Insertion at different points 

Python
# Python Program illustrating
# numpy.insert()

import numpy as geek

#Working on 1D
arr = geek.arange(6).reshape(2, 3)
print("1D arr : \n", arr)
print("Shape : ", arr.shape)

# value = 9
# index = 1   
# Insertion before first index
a = geek.insert(arr, (2, 4), 9)
print("\nInsertion at two points : ", a)
print("Shape : ", a.shape)


# Working on 2D array 
arr = geek.arange(12).reshape(3, 4)
print("\n\n2D arr : \n", arr)
print("Shape : ", arr.shape)
a = geek.insert(arr, (0, 3), 66, axis = 1)
print("\nInsertion at two points : \n", a)
print("Shape : ", a.shape)

Output : 

1D arr : 
 [[0 1 2]
 [3 4 5]]
Shape :  (2, 3)

Insertion at two points :  [0 1 9 2 3 9 4 5]
Shape :  (8,)


2D arr : 
 [[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
Shape :  (3, 4)

Insertion at two points : 
 [[66  0  1  2 66  3]
 [66  4  5  6 66  7]
 [66  8  9 10 66 11]]
Shape :  (3, 6)

References : https://numpy.org/doc/stable/reference/generated/numpy.insert.html#numpy.insert Note : These codes won’t run on online IDE's. Please run them on your systems to explore the working.


Practice Tags :

Similar Reads

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy