วิธีกรองอาร์เรย์ numpy (4 ตัวอย่าง)


คุณสามารถใช้วิธีการต่อไปนี้เพื่อกรองค่าของอาร์เรย์ NumPy:

วิธีที่ 1: กรองค่าตามเงื่อนไขเดียว

 #filter for values less than 5
my_array[my_array < 5 ]

วิธีที่ 2: ค่ากรองโดยใช้เงื่อนไข “หรือ”

 #filter for values less than 5 or greater than 9
my_array[(my_array < 5 ) | (my_array > 9 )]

วิธีที่ 3: กรองค่าโดยใช้เงื่อนไข “และ”

 #filter for values greater than 5 and less than 9
my_array[(my_array > 5 ) & (my_array < 9 )]

วิธีที่ 4: กรองค่าที่มีอยู่ในรายการ

 #filter for values that are equal to 2, 3, 5, or 12
my_array[np. in1d (my_array, [2, 3, 5, 12])]

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

 import numpy as np

#create NumPy array
my_array = np. array ([1, 2, 2, 3, 5, 6, 7, 10, 12, 14])

#view NumPy array
my_array

array([ 1, 2, 2, 3, 5, 6, 7, 10, 12, 14])

ตัวอย่างที่ 1: กรองค่าตามเงื่อนไข

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

 #filter for values less than 5
my_array[(my_array < 5 )]

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

#filter for values greater than 5
my_array[(my_array > 5 )]

array([6,7,10,12,14])

#filter for values equal to 5
my_array[(my_array == 5 )]

array([5])

ตัวอย่างที่ 2: กรองค่าโดยใช้เงื่อนไข “OR”

รหัสต่อไปนี้แสดงวิธีการกรองค่าของอาร์เรย์ NumPy โดยใช้เงื่อนไข “OR”:

 #filter for values less than 5 or greater than 9
my_array[(my_array < 5 ) | (my_array > 9 )]

array([ 1, 2, 2, 3, 10, 12, 14])

ตัวกรองนี้ส่งคืนค่าอาร์เรย์ NumPy น้อยกว่า 5 หรือ มากกว่า 9

ตัวอย่างที่ 3: กรองค่าโดยใช้เงื่อนไข “AND”

รหัสต่อไปนี้แสดงวิธีการกรองค่าของอาร์เรย์ NumPy โดยใช้เงื่อนไข “AND”:

 #filter for values greater than 5 and less than 9
my_array[(my_array > 5 ) & (my_array < 9 )]

array([6, 7])

ตัวกรองนี้ส่งคืนค่าจากอาร์เรย์ NumPy ที่มากกว่า 5 และ น้อยกว่า 9

ตัวอย่างที่ 4: กรองค่าที่มีอยู่ในรายการ

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

 #filter for values that are equal to 2, 3, 5, or 12
my_array[np. in1d (my_array, [2, 3, 5, 12])]

array([ 2, 2, 3, 5, 12])

ตัวกรองนี้ส่งคืนเฉพาะค่าที่เท่ากับ 2, 3, 5 หรือ 12 เท่านั้น

หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มสำหรับฟังก์ชัน NumPy in1d() ได้ที่นี่

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

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

วิธีกรองแถว Pandas DataFrame ที่มีสตริงเฉพาะ
วิธีกรอง Pandas DataFrame ในหลายเงื่อนไข
วิธีใช้ตัวกรอง “NOT IN” ใน Pandas DataFrame

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

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