วิธีใช้ numpy where() มีหลายเงื่อนไข


คุณสามารถใช้วิธีการต่อไปนี้เพื่อใช้ฟังก์ชัน NumPywhere() ได้หลายเงื่อนไข:

วิธีที่ 1: ใช้ Where() กับ OR

 #select values less than five or greater than 20
x[np. where ((x < 5) | (x > 20))]

วิธีที่ 2: ใช้ Where() กับ AND

 #select values greater than five and less than 20
x[np. where ((x > 5) & (x < 20))]

ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ

วิธีที่ 1: ใช้ Where() กับ OR

รหัสต่อไปนี้แสดงวิธีการเลือกแต่ละค่าในอาร์เรย์ NumPy ที่น้อยกว่า 5 หรือ มากกว่า 20:

 import numpy as np

#define NumPy array of values
x = np. array ([1, 3, 3, 6, 7, 9, 12, 13, 15, 18, 20, 22])

#select values that meet one of two conditions
x[np. where ((x < 5) | (x > 20))]

array([ 1, 3, 3, 22])

โปรดทราบว่าสี่ค่าในอาร์เรย์ NumPy น้อยกว่า 5 หรือ มากกว่า 20

คุณยังสามารถใช้ฟังก์ชัน ขนาด เพื่อค้นหาจำนวนค่าที่ตรงตามเงื่อนไขข้อใดข้อหนึ่ง:

 #find number of values that are less than 5 or greater than 20
(x[np. where ((x < 5) | (x > 20))]). size

4

วิธีที่ 2: ใช้ Where() กับ AND

รหัสต่อไปนี้แสดงวิธีการเลือกแต่ละค่าจากอาร์เรย์ NumPy ที่มากกว่า 5 และ น้อยกว่า 20:

 import numpy as np

#define NumPy array of values
x = np. array ([1, 3, 3, 6, 7, 9, 12, 13, 15, 18, 20, 22])

#select values that meet two conditions
x[np. where ((x > 5) & (x < 20))]

array([6, 7, 9, 12, 13, 15, 18])

อาร์เรย์เอาต์พุตจะแสดงค่าเจ็ดค่าจากอาร์เรย์ NumPy ดั้งเดิมที่มากกว่า 5 และ น้อยกว่า 20

ขอย้ำอีกครั้งว่าคุณสามารถใช้ฟังก์ชัน ขนาด เพื่อกำหนดจำนวนค่าที่ตรงตามเงื่อนไขทั้งสอง:

 #find number of values that are greater than 5 and less than 20
(x[np. where ((x > 5) & (x < 20))]). size

7

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่น ๆ ใน NumPy:

วิธีการคำนวณโหมดของอาร์เรย์ NumPy
วิธีค้นหาดัชนีค่าในอาร์เรย์ NumPy
วิธีแมปฟังก์ชันกับอาร์เรย์ NumPy

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *