np.where函数

来源:互联网 发布:mac tomcat端口被占用 编辑:程序博客网 时间:2024/06/01 19:58
原文地址:https://stackoverflow.com/questions/23359886/selecting-rows-in-numpy-ndarray-based-on-the-value-of-two-columns?rq=1
And here is the sample code. For simplicity I changed the size3600000 to 5.a = np.array(xrange(5*3))a.shape =(5,3)Now array a looklike this:array([[0,1,2],[3,4,5],[6,7,8],[9,10,11],[12,13,14]])If you want row with HUE=9, dolike this:a[np.where(a[:,0]==9)]#array([[ 9, 10, 11]])If you want row with VALUE=4, dolike this:a[np.where(a[:,1]==4)]#array([[3, 4, 5]])If you want rowwith HUE=0 and VALUE=1,do like this:a[np.where((a[:,0]==0)*(a[:,1]==1))]#array([[0,1, 2]])


自己写一个小例子:
a=np.array(range(5*3))print(a)
a.shape=(5,3)print(a)#使用print之后和单纯用变量结果显示并不完全一样index=np.where((a[:,0]==9))print(index)d=a[index]print(d)[out1]:
[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14]
[out2]:

[[ 0  1  2] [ 3  4  5] [ 6  7  8] [ 9 10 11] [12 13 14]]
[out3]:[[ 9 10 11]]



原创粉丝点击