介绍 1。np。(条件,x, y)
2。np.where(条件)
本篇文章为大家展示了np.where方法怎么在Numpy中使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
<代码> Numpy。(x, y)(条件)代码>
numpy.where()有两种用法:
1。np。(条件,x, y)
满足条件(条件)、输出x,不满足输出y。
如果是一维数组,相当于[十五如果c其他青年志愿(c、十五、青年志愿)邮政(条件,x, y)]
在祝辞祝辞,aa =, np.arange (10) 在祝辞祝辞,np.where (aa, 1, 1) 数组([1,1,1,1,1,1,1,1,1,1]),#,0为False,所以第一个输出1 祝辞祝辞祝辞,np.where (aa 祝辞,5、1、1) 数组([1,1,1,1,1,1,1,1,1,1]) 祝辞祝辞祝辞,np.where([[真,假],,[真,真]],,,#,官网上的例子 ,,[[1,2],[3,4]], ,,,,,,[[9 8],[7,6]]) 数组([[1,,8], ,,[3,4]])
上面这个例子的条件为[[真,假],[真,假]],分别对应最后输出结果的四个值。第一个值从[1,9]中选,因为条件为真实的,所以是选1。第二个值从[2,8]中选,因为条件为False,所以选8日后面以此类推。类似的问题可以再看个例子:
在祝辞祝辞,a =10 在祝辞祝辞,np.where ([[a 祝辞,5,a & lt;, 5],, (a ==, 10, a ==, 7]], ,,,,,,[[“chosen",“not  chosen"],, (“chosen",“not  chosen"]], ,,,,,,[[“not  chosen",“chosen"],, (“not  chosen",“chosen"]]) 阵列([[& # 39;选择# 39;,,& # 39;选择# 39;], ,,,(& # 39;选择# 39;,,& # 39;选择# 39;]],dtype=& # 39; & lt; U10& # 39;)
2。np.where(条件)
只有条件(条件),没有x和y,则输出满足条件(即非0)元素的坐标(等价于numpy.nonzero)。这里的坐标以元组的形式给出,通常原数组有多少维,输出的元组中就包含几个数组,分别对应符合条件元素的各维坐标。
在祝辞祝辞,a =, np.array ((2、4、6、8、10]) 在祝辞祝辞,np.where(祝辞a 5),, #,返回索引 (数组([2,3,4]),),, 在祝辞祝辞,(np.where(祝辞a 5)],,, #,等价于,一个(a> 5) 数组([,6、8日,10]) 在祝辞祝辞,np.where ([[0, 1], [1, 0]]) (数组([0,1]),数组((1,0)))
上面这个例子条件中[[0,1],[1,0]]的真值为两个1,各自的第一维坐标为[0,1],第二维坐标为(1,0)。
下面看个复杂点的例子:
在祝辞祝辞,a =, np.arange (27) .reshape (3, 3, 3) ,在的在的在一个 数组([[[,0,1,2), (,,,,3,4,5], ,,,(,6,7,8)), ,,,[[,9,10,11), ,,,(12日,13日,14日), ,,,(15日,16日,17日]], ,,,[[18日,19日,20日), ,,,(21日,22日,23日), ,,,(24日,25日,26日]]]) 在祝辞祝辞,np.where(祝辞a 5) (数组([0,0,0,1,1,1,1,1,1,1,1,1,,2,,2,,2,,2,,2,,2,,2,,2,,2]), ,数组([2,,2,,2,,0,0,0,1,1,1,,2,,2,,2,,0,0,0,1,1,1,,2,,2,,2]), ,数组([0,,1,,2,,0,,1,,2,,0,,1,,2,,0,,1,,2,,0,,1,,2,,0,,1,,2,,0,,1,,2])) #,符合条件的元素为 [才能,6,7,8)), ,,[[,9,10,11), ,,,(12日,13日,14日), ,,,(15日,16日,17日]], ,,[[18日,19日,20日), ,,,(21日,22日,23日), ,,,(24日,25日,26日]]]
所以np.where会输出每个元素的对应的坐标,因为原数组有三维,所以元组中有三个数组。
补充
np.where和np。searchsorted同属于Numpy数组搜索的一部分,这里先介绍简单的地方
import numpy as np 时间=a np.array ([1,, 2,, 3,, 4,, 5]) 时间=b np.where (==a 5) 打印(b)
,方法将会返回一个元祖
(数组([4]))
此外还将介绍一个搜索奇数和偶数的方法(数组全都默认使用最上面一数的组)
可见,简单的判断余数即可
c =, np.where (% 2,==, 0) 打印(c) 时间=d np.where (% 2,==, 1) 打印(d)
返回:
(数组([1,,3]),) (数组([0,,2,,4]),)
上述内容就是np.where方法怎么在Numpy中使用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。