可以使用numpy的布尔索引来实现删除等于某个值的元素。

假设有以下的numpy数组:

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7])

要删除等于3的元素,可以使用以下代码:

arr = arr[arr != 3]

这里的arr != 3会返回一个布尔数组,表示哪些元素不等于3,然后将这个布尔数组作为索引,得到一个新的数组,这个新数组中不包含等于3的元素。最后再将这个新数组赋值给原来的数组,即完成了删除操作。

如果要删除的是多个值,可以使用~符号来取反:

arr = arr[~np.isin(arr, [3, 5])]

这里的np.isin(arr, [3, 5])会返回一个布尔数组,表示哪些元素等于3或5,然后再用~符号取反,得到一个布尔数组,表示哪些元素不等于3或5。将这个布尔数组作为索引,得到一个新的数组,这个新数组中不包含等于3或5的元素。最后再将这个新数组赋值给原来的数组,即完成了删除操作。

numpy数组删除等于某个值的元素

原文地址: https://www.cveoy.top/t/topic/bwUb 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录