วิธีการใช้ตัวดำเนินการ “or” ใน r (พร้อมตัวอย่าง)


คุณสามารถใช้ | สัญลักษณ์เป็นตัวดำเนินการ “OR” ใน R

ตัวอย่างเช่น คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อกรองแถวในกรอบข้อมูลใน R ที่ตรงตามเงื่อนไข 1 หรือ เงื่อนไข 2:

 df[(condition1) | (condition2), ]

ตัวอย่างต่อไปนี้แสดงวิธีการใช้ตัวดำเนินการ “OR” นี้ในสถานการณ์ที่แตกต่างกัน

ตัวอย่างที่ 1: ใช้ตัวดำเนินการ “OR” เพื่อกรองแถวตามค่าตัวเลขใน R

สมมติว่าเรามี data frame ต่อไปนี้ใน R:

 #create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'),
                 points=c(25, 12, 15, 14, 19, 23, 25, 29),
                 assists=c(5, 7, 7, 9, 12, 9, 9, 4),
                 rebounds=c(11, 8, 10, 6, 6, 5, 9, 12))

#view data frame
df

  team points assists rebounds
1 to 25 5 11
2 A 12 7 8
3 B 15 7 10
4 B 14 9 6
5 B 19 12 6
6 B 23 9 5
7 C 25 9 9
8 C 29 4 12

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อกรองแถวใน data frame โดยที่ค่าในคอลัมน์ point มากกว่า 20 หรือ ค่าในคอลัมน์ Assists เท่ากับ 9:

 #filter rows where points > 20 or assists = 9
df[(df$points > 20 ) | (df$assists == 9 ), ]

  team points assists rebounds
1 to 25 5 11
4 B 14 9 6
6 B 23 9 5
7 C 25 9 9
8 C 29 4 12

แถวเดียวที่ส่งคืนคือแถวที่มีค่าคะแนนมากกว่า 20 หรือ ค่าช่วยเหลือเท่ากับ 9

ตัวอย่างที่ 2: ใช้ตัวดำเนินการ “OR” เพื่อกรองแถวตามค่าสตริงใน R

สมมติว่าเรามี data frame ต่อไปนี้ใน R:

 #create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'),
                 position=c('G', 'G', 'F', 'F', 'C', 'F', 'C', 'C'),
                 conference=c('W', 'W', 'W', 'W', 'E', 'E', 'E', 'E'),
                 dots=c(11, 8, 10, 6, 6, 5, 9, 12))

#view data frame
df

  team position conference points
1 AGW 11
2 BGW 8
3 CFW 10
4 DFW 6
5 ECE 6
6 FFE 5
7 GCE 9
8 HCE 12

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อกรองแถวในกรอบข้อมูล โดยที่ค่าในคอลัมน์ตำแหน่งเท่ากับ G หรือ ค่าในคอลัมน์ตำแหน่งเท่ากับ F หรือ ค่าในคอลัมน์ทีมเท่ากับ H:

 #filter rows based on string values
df[(df$team == ' H ') | (df$position == ' G ') | (df$position == ' F '), ]

  team position conference points
1 AGW 11
2 BGW 8
3 CFW 10
4 DFW 6
6 FFE 5
8 HCE 12

แถวเดียวที่ส่งคืนคือแถวที่ตรงตามเงื่อนไขที่ระบุอย่างน้อยหนึ่งในสามเงื่อนไข

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

บทช่วยสอนต่อไปนี้จะอธิบายวิธีใช้โอเปอเรเตอร์ทั่วไปอื่นๆ ใน R:

วิธีใช้ตัวดำเนินการเครื่องหมายดอลลาร์ ($) ใน R
วิธีใช้ตัวดำเนินการ Tilde (~) ใน R
วิธีใช้ตัวดำเนินการ “NOT IN” ใน R

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

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