当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy.delete()用法及代码示例


关于:
numpy.delete(数组,对象,轴=无):返回带有删除的子数组以及提及的轴的新数组。
参数:

array   : [array_like]Input array. 
object  : [int, array of ints]Sub-array to delete
axis    : Axis along which we want to delete sub-arrays. By default, it object is applied to
              applied to flattened array

返回:

An array with sub-array being deleted as per the mentioned object along a given axis. 

代码1:从一维数组中删除


# Python Program illustrating 
# numpy.delete() 
  
import numpy as geek 
  
#Working on 1D 
arr = geek.arange(5) 
print("arr : \n", arr) 
print("Shape : ", arr.shape) 
  
# deletion from 1D array  
  
object = 2
a = geek.delete(arr, object) 
print("\ndeleteing arr 2 times : \n", a) 
print("Shape : ", a.shape) 
  
object = [1, 2] 
b = geek.delete(arr, object) 
print("\ndeleteing arr 3 times : \n", b) 
print("Shape : ", a.shape)

输出:

arr : 
 [0 1 2 3 4]

Repeating arr 2 times : 
 [0 0 1 1 2 2 3 3 4 4]
Shape :  (10,)

Repeating arr 3 times : 
 [0 0 0 ..., 4 4 4]
Shape :  (15,)

代码2:

# Python Program illustrating 
# numpy.delete() 
  
import numpy as geek 
  
#Working on 1D 
arr = geek.arange(12).reshape(3, 4) 
print("arr : \n", arr) 
print("Shape : ", arr.shape) 
  
# deletion from 2D array  
a = geek.delete(arr, 1, 0) 
''' 
        [[ 0  1  2  3] 
         [ 4  5  6  7] -> deleted 
         [ 8  9 10 11]] 
'''
print("\ndeleteing arr 2 times : \n", a) 
print("Shape : ", a.shape) 
  
# deletion from 2D array  
a = geek.delete(arr, 1, 1) 
''' 
        [[ 0  1*  2  3] 
         [ 4  5*  6  7]  
         [ 8  9* 10 11]] 
              ^ 
              Deletion 
'''
print("\ndeleteing arr 2 times : \n", a) 
print("Shape : ", a.shape)

输出:

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

deleteing arr 2 times : 
 [[ 0  1  2  3]
 [ 8  9 10 11]]
Shape :  (2, 4)

deleteing arr 2 times : 
 [[ 0  2  3]
 [ 4  6  7]
 [ 8 10 11]]
Shape :  (3, 3)

deleteing arr 3 times : 
 [ 0  3  4  5  6  7  8  9 10 11]
Shape :  (3, 3)

代码3:使用布尔掩码执行删除

# Python Program illustrating 
# numpy.delete() 
  
import numpy as geek 
  
arr = geek.arange(5) 
print("Original array : ", arr) 
mask = geek.ones(len(arr), dtype=bool) 
  
# Equivalent to np.delete(arr, [0,2,4], axis=0) 
mask[[0,2]] = False
print("\nMask set as : ", mask) 
result = arr[mask,...] 
print("\nDeletion Using a Boolean Mask : ", result)

输出:

Original array :  [0 1 2 3 4]

Mask set as :  [False  True False  True  True]

Deletion Using a Boolean Mask :  [1 3 4]

参考文献:
https://docs.scipy.org/doc/numpy/reference/generated/numpy.delete.html



相关用法


注:本文由纯净天空筛选整理自 numpy.delete() in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。