當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python numpy.insert()用法及代碼示例

關於:
numpy.insert(數組,對象,值,軸=無):沿提到的軸在給定索引之前插入值。
參數:

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 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)

輸出:

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 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 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)

參考文獻:
https://docs.scipy.org/doc/numpy/reference/generated/numpy.insert.html#numpy.insert

注意:
這些代碼無法在online-ID上運行。請在您的係統上運行它們以探索其工作原理。



相關用法


注:本文由純淨天空篩選整理自 numpy.insert() in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。