Python中的 numpy.insert()
numpy.insert()函数在给定索引之前沿提到的轴插入值。句法 :
numpy.insert(array, object, values, axis = None)
参数 :
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
返回 :
An copy of array with values being inserted as per the mentioned object along a given axis.
代码 1:从一维数组中删除
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)
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)
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)
输出 :
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)
代码 2:使用标量
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)
输出 :
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)
代码 3:在不同点插入
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)
输出 :
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)