📜  Python中的 numpy.delete()(1)

📅  最后修改于: 2023-12-03 15:19:25.727000             🧑  作者: Mango

Python中的 numpy.delete()

numpy.delete() 是 NumPy 库中的一个函数,用于从数组中删除指定位置的元素。

语法
numpy.delete(arr, obj, axis=None)

参数说明:

  • arr:输入的数组。
  • obj:要删除的元素或元素的索引、切片、布尔屏蔽或用于选择子数组的整数数组。
  • axis:指定沿着哪个轴进行删除操作。如果未提供,默认为 None,删除展平后的数组。
返回值

numpy.delete() 返回一个新数组,其中删除了指定位置的元素。

示例

下面是一些使用 numpy.delete() 函数的示例:

删除元素
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
result = np.delete(arr, 2)  # 删除索引为2的元素
print(result)  # 输出: [1, 2, 4, 5]
删除多个元素
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
indices = [0, 2]  # 要删除的索引
result = np.delete(arr, indices)  # 删除索引为0和2的元素
print(result)  # 输出: [2, 4, 5]
删除指定轴上的元素
import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
result = np.delete(arr, 1, axis=0)  # 删除第1行
print(result)
'''
输出:
[[1, 2, 3],
 [7, 8, 9]]
'''

result = np.delete(arr, 2, axis=1)  # 删除第2列
print(result)
'''
输出:
[[1, 2],
 [4, 5],
 [7, 8]]
'''
删除布尔屏蔽下的元素
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
mask = arr % 2 == 0  # 创建布尔屏蔽,选择偶数元素
result = np.delete(arr, mask)  # 删除偶数元素
print(result)  # 输出: [1, 3, 5]

通过这些示例,你可以了解到如何使用 numpy.delete() 函数从数组中删除元素。请注意,numpy.delete() 不会修改原始数组,而是返回一个新的数组,因此也可以将返回值赋给新的变量以复用。