วิธีเลือกแถวตามเงื่อนไขใน r (พร้อมตัวอย่าง)


คุณสามารถใช้วิธีใดวิธีหนึ่งต่อไปนี้เพื่อเลือกแถวตามเงื่อนไขใน R:

วิธีที่ 1: เลือกแถวตามเงื่อนไข

 df[df$var1 == ' value ', ]

วิธีที่ 2: เลือกแถวตามเงื่อนไขหลายข้อ

 df[df$var1 == ' value1 ' & df$var2 > value2 , ]

วิธีที่ 3: เลือกแถวตามค่าในรายการ

 df[df$var1 %in% c(' value1 ', ' value2 ', ' value3 '), ]

ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีกับกรอบข้อมูลต่อไปนี้ใน R:

 #create data frame
df <- data. frame (points=c(1, 2, 4, 3, 4, 8),
                 assists=c(6, 6, 7, 8, 8, 9),
                 team=c('A', 'A', 'A', 'B', 'C', 'C'))

#view data frame
df

  team assists points
1 1 6 A
2 2 6 A
3 4 7 A
4 3 8 B
5 4 8 C
6 8 9 C

วิธีที่ 1: เลือกแถวตามเงื่อนไข

รหัสต่อไปนี้แสดงวิธีการเลือกแถวตามเงื่อนไขใน R:

 #select rows where team is equal to 'A'
df[df$team == ' A ', ]

  team assists points
1 1 6 A
2 2 6 A
3 4 7 A

โปรดทราบว่ามีการเลือกเฉพาะบรรทัดที่ทีมเท่ากับ “A” เท่านั้น

เรายังสามารถใช้ != เพื่อเลือกแถวที่ไม่เท่ากับค่าได้:

 #select rows where team is not equal to 'A'
df[df$team != ' A ', ]

  team assists points
4 3 8 B
5 4 8 C
6 8 9 C

วิธีที่ 2: เลือกแถวตามเงื่อนไขหลายข้อ

รหัสต่อไปนี้แสดงวิธีการเลือกแถวตามเงื่อนไขต่างๆ ใน R:

 #select rows where team is equal to 'A' and points is greater than 1
df[df$team == ' A ' & df$points > 1 , ]

  team assists points
2 2 6 A
3 4 7 A

โปรดทราบว่าจะมีการเลือกเฉพาะบรรทัดที่ทีมเท่ากับ “A” และ คะแนนมากกว่า 1 เท่านั้น

วิธีที่ 3: เลือกแถวตามค่าในรายการ

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

 #select rows where team is equal to 'A' or 'C'
df[df$team %in% c(' A ', ' C '), ]

โปรดทราบว่ามีการเลือกเฉพาะบรรทัดที่ทีมเท่ากับ “A” หรือ “C”

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

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

วิธีเลือกแถวที่มีค่าปรากฏในคอลัมน์ใด ๆ ใน R
วิธีเลือกคอลัมน์เฉพาะใน R
วิธีเลือกคอลัมน์ตามดัชนีใน R

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

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