A: วิธีค้นหาแถวแรกที่ตรงตามเกณฑ์
คุณสามารถใช้วิธีการต่อไปนี้เพื่อค้นหาแถวแรกของกรอบข้อมูลใน R ที่ตรงตามเกณฑ์เฉพาะ:
วิธีที่ 1: ค้นหาแถวแรกที่ตรงกับเกณฑ์
#get first row where value in 'team' column is equal to 'B' df[which(df$team == ' B ', arr. ind = TRUE )[1],]
วิธีที่ 2: ค้นหาแถวแรกที่ตรงกับเกณฑ์หลายข้อ
#get first row where 'points' column > 15 and 'assists' column > 10 df[which(df$points>15 & df$assists>10, arr. ind = TRUE )[1],]
วิธีที่ 3: ค้นหาแถวแรกที่ตรงกับเกณฑ์ข้อใดข้อหนึ่ง
#get first row where 'points' column > 15 or 'assists' column > 10 df[which(df$points>15 | df$assists>10, arr. ind = TRUE )[1],]
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติกับกรอบข้อมูลต่อไปนี้ใน R:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'), points=c(18, 13, 19, 14, 24, 21, 20, 28), assists=c(5, 7, 17, 9, 12, 9, 5, 12)) #view data frame df team points assists 1 to 18 5 2 to 13 7 3 A 19 17 4 B 14 9 5 B 24 12 6 C 21 9 7 C 20 5 8 C 28 12
ตัวอย่างที่ 1: ค้นหาแถวแรกที่ตรงตามเกณฑ์
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อค้นหาแถวแรกที่ค่าในคอลัมน์ ทีม เท่ากับ “B”:
#find first row where team is equal to 'B' df[which(df$team == ' B ', arr. ind = TRUE )[1],] team points assists 4 B 14 9
เราจะเห็นว่าแถวแรกที่ค่าในคอลัมน์ ทีม เท่ากับ “B” คือแถวที่สี่ในกรอบข้อมูล
ตัวอย่างที่ 2: ค้นหาแถวแรกที่ตรงกับเกณฑ์หลายข้อ
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อค้นหาแถวแรกที่ค่าในคอลัมน์ คะแนน มากกว่า 15 และค่าในคอลัมน์ ช่วยเหลือ มากกว่า 10:
#find first row where points > 15 and assists > 10 df[which(df$points>15 & df$assists>10, arr. ind = TRUE )[1],] team points assists 3 A 19 17
เราจะเห็นว่าแถวแรกที่ค่าในคอลัมน์ จุด มากกว่า 15 และค่าในคอลัมน์ ช่วยเหลือ มากกว่า 10 คือแถวที่สามของกรอบข้อมูล
ตัวอย่างที่ 3: ค้นหาแถวแรกที่ตรงกับเกณฑ์ข้อใดข้อหนึ่งจากหลายเกณฑ์
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อค้นหาแถวแรกที่ค่าในคอลัมน์ คะแนน มากกว่า 15 หรือค่าในคอลัมน์ ช่วยเหลือ มากกว่า 10:
#find first row where points > 15 or assists > 10 df[which(df$points>15 | df$assists>10, arr. ind = TRUE )[1],] team points assists 1 to 18 5
เราจะเห็นว่าแถวแรกที่ค่าในคอลัมน์ จุด มากกว่า 15 หรือค่าในคอลัมน์ ช่วยเหลือ มากกว่า 10 คือแถวแรกของกรอบข้อมูล
หมายเหตุ : & และ | ตัวดำเนินการแทน “และ” และ “หรือ” ใน R ตามลำดับ
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน R:
วิธีค้นหาค่าสูงสุดในแต่ละแถวใน R
วิธีการคำนวณค่ามัธยฐานของแถวใน R
วิธีค้นหาแถวที่ไม่ซ้ำในหลายคอลัมน์ใน R