วิธีใช้ตัวดำเนินการ “or” ใน pandas (พร้อมตัวอย่าง)
คุณสามารถใช้ | สัญลักษณ์เป็นตัวดำเนินการ “OR” ในหมีแพนด้า
ตัวอย่างเช่น คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อกรองแถวใน DataFrame แพนด้าที่ตรงตามเงื่อนไข 1 หรือ เงื่อนไข 2:
df[(condition1) | (condition2)]
ตัวอย่างต่อไปนี้แสดงวิธีการใช้ตัวดำเนินการ “OR” นี้ในสถานการณ์ที่แตกต่างกัน
ตัวอย่างที่ 1: ใช้ตัวดำเนินการ “OR” เพื่อกรองแถวตามค่าตัวเลขใน Pandas
สมมติว่าเรามี DataFrame แพนด้าดังต่อไปนี้:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'], ' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame print (df) team points assists rebounds 0 to 25 5 11 1 to 12 7 8 2 B 15 7 10 3 B 14 9 6 4 B 19 12 6 5 B 23 9 5 6 C 25 9 9 7 C 29 4 12
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อกรองแถวใน DataFrame โดยที่ค่าในคอลัมน์จุดมากกว่า 20 หรือ ค่าในคอลัมน์ช่วยเหลือเท่ากับ 9:
#filter rows where points > 20 or assists = 9 df[(df. points > 20) | (df. assists == 9)] team points assists rebounds 0 to 25 5 11 3 B 14 9 6 5 B 23 9 5 6 C 25 9 9 7 C 29 4 12
แถวเดียวที่ส่งคืนคือแถวที่มีค่าคะแนนมากกว่า 20 หรือ ค่าช่วยเหลือเท่ากับ 9
ตัวอย่างที่ 2: ใช้ตัวดำเนินการ “OR” เพื่อกรองแถวตามค่าสตริงใน Pandas
สมมติว่าเรามี DataFrame แพนด้าดังต่อไปนี้:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' position ': ['G', 'G', 'F', 'F', 'C', 'F', 'C', 'C'], ' conference ': ['W', 'W', 'W', 'W', 'E', 'E', 'E', 'E'], ' points ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame print (df) team position conference points 0 AGW 11 1 BGW 8 2 CFW 10 3DFW 6 4 ECE 6 5 FFE 5 6 GCE 9 7 HCE 12
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อกรองแถวใน DataFrame โดยที่ค่าในคอลัมน์ตำแหน่งเท่ากับ G หรือ ค่าในคอลัมน์ตำแหน่งเท่ากับ F หรือ ค่าในคอลัมน์ทีมเท่ากับ H:
#filter rows based on string values df[( df.team == ' H ') | (df. position == ' G ') | (df. position == ' F ')] team position conference points 0 A G W 11 1 B G W 8 2 C F W 10 3 D F W 6 5 F F E 5 7 H C E 12
แถวเดียวที่ส่งคืนคือแถวที่ตรงตามเงื่อนไขที่ระบุอย่างน้อยหนึ่งในสามเงื่อนไข
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่น ๆ ในแพนด้า:
วิธีกรอง Pandas DataFrame ตามค่าคอลัมน์
วิธีกรองแถว Pandas DataFrame ตามวันที่
วิธีกรอง Pandas DataFrame ในหลายเงื่อนไข