# numpy.insert() in Python

numpy.insert(array, object, values, axis = None) : inserts values along the mentioned axis before the given indices.
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 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 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 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)
```

Note :
These codes won’t run on online-ID. Please run them on your systems to explore the working.

This article is contributed by Mohit Gupta_OMG 😀. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.