Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

หา Element ในช่วงที่กำหนดใน NumPy Array ด้วย Python

Filter NumPy Array ด้วยเงื่อนไขช่วงค่า

กำหนด NumPy 1D Array หาตำแหน่งหรือค่าที่อยู่ในช่วง [low, high]

วิธีที่ 1: ใช้ np.logical_and + np.where (ได้ Index)


import numpy as np
A = np.array([5,9,11,4,31,27,8])
idx = np.where(np.logical_and(A >= 6, A <= 15))
print(idx)  # (array([1,2,6]),)

วิธีที่ 2: ใช้ Boolean Indexing ด้วย * (ได้ค่าโดยตรง)


vals = A[(A >= 6) * (A <= 15)]
print(vals)  # [9 11 8]

หมายเหตุ: * ทำหน้าที่ Logical AND บน Boolean Array