numpy.where()用法详解
numpy.where()
是NumPy库中的一个函数,用于根据指定的条件返回输入数组中的元素。它的语法如下:
numpy.where(condition[, x, y])
其中,condition
是一个布尔型数组,用于指定元素是否足条件;x
和y
是两个可选参数,用于指定满足条件和不满足条件的元素的替代值。只传入condition
参数,则返回满足条件的元素的索引。
示例一:返回满足条件的元素
import numpy as np
# 创建一个一维数组
a = np.array([1, 2, 3, 4, 5])
# 使用where()函数返回满足条件的元素
b = np.where(a > 2)
# 打印结果
print(b)
在上面的示例中,我们首先创建了一个一维数组a,然后使用np.where()
函数返回了满足条件a > 2
的元素的索引,并将结果保存在变量b中。最后,使用print()
函数打印了结果。
输出结果为:
(array([2, 3, 4], dtype=int64),)
可以看到,np.where()
函数返回了一个元组,其中包含一个一维数组,该数组包含满足条件的元素的索引。
示例二:替换不满足条件的元素
import numpy as np
# 创建一个一维数组
a = np.array([1, 2, 3, 4, 5])
# 使用where()函数替换不满足条件的元素
b = np.where(a > 2, 0, a)
# 打印结果
print(b)
在上面的示例中,我们首先创建了一个一维数组a,然后使用np.where()
函数替换了不满足条件a > 2
的元素,将它们替换为0,并将结果保存在变量b。最后,使用print()
函数打印了结果。
输出结果为:
[1 2 0 0 0]
可以看到,np.where()
函数返回了一个一维数组,其中不满足条件的元素被替换为了0。
示例三:使用多个条件
import numpy as np
# 创建一个一维数组
a = np.array([1, 2, 3, 4, 5])
# 使用where()函数返回满足多个条件的元素
b = np.where((a > 2) & (a < 5))
# 打印结果
print(b)
在上面的示例中,我们首先创建了一个一维数组a,然后使用np.where()
函数返回了满足多个条件(a > 2) & (a < 5)
的元素的索引将结果保存在变量b中。最后,使用print()
函数打印了结果。
输出结果为:
(array([2, 3], dtype=int64),)
可以看到,np.where()
函数返回了一个元组,其中包含一个一维数组该数组包含满足多个条件的元素的索引。
综上所述,numpy.where()
函数是NumPy库中一个非常有用的,可以根据指定的条件返回输入数组中的元素。掌握它的用法可以帮助您更好地进行数组操作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:numpy.where() 用法详解 - Python技术站