วิธีใช้ฟังก์ชัน slice() ใน dplyr (พร้อมตัวอย่าง)
คุณสามารถใช้ฟังก์ชัน Slice() จากแพ็คเกจ dplyr ใน R เพื่อสร้างชุดย่อยของแถวตามตำแหน่งจำนวนเต็ม
คุณสามารถใช้วิธีการต่อไปนี้เพื่อซับเซ็ตแถวบางแถวในกรอบข้อมูล:
วิธีที่ 1: การย่อยแถวเฉพาะ
#get row 3 only
df %>% slice(3)
วิธีที่ 2: เซ็ตย่อยหลายแถว
#get rows 2, 5, and 6
df %>% slice(2, 5, 6)
วิธีที่ 3: การย่อยช่วงแถว
#get rows 1 through 3
df %>% slice(1:3)
วิธีที่ 4: เซ็ตย่อยแถวตามกลุ่ม
#get first row by group
df %>%
group_by(var1) %>%
slice(1)
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีกับกรอบข้อมูลต่อไปนี้:
#create dataset df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C', 'C'), points=c(1, 2, 3, 4, 5, 6, 7), assists=c(1, 5, 2, 3, 2, 2, 0)) #view dataset df team points assists 1 A 1 1 2 to 2 5 3 To 3 2 4 B 4 3 5 B 5 2 6 C 6 2 7 C 7 0
ตัวอย่างที่ 1: เซตย่อยของแถวที่ระบุ
รหัสต่อไปนี้แสดงวิธีการใช้ฟังก์ชัน Slice() เพื่อเลือกเฉพาะแถวที่ 3 ในกรอบข้อมูล:
#get row 3 only
df %>% slice(3)
team points assists
1 to 3 2
ตัวอย่างที่ 2: เซตย่อยของหลายบรรทัด
รหัสต่อไปนี้แสดงวิธีใช้ฟังก์ชัน Slice() เพื่อเลือกแถวเฉพาะหลายแถวในกรอบข้อมูล:
#get rows 2, 5, and 6
df %>% slice(2, 5, 6)
team points assists
1 to 2 5
2 B 5 2
3 C 6 2
ตัวอย่างที่ 3: เซตย่อยของช่วงแถว
รหัสต่อไปนี้แสดงวิธีการใช้ฟังก์ชัน Slice() เพื่อเลือกแถวทั้งหมดระหว่าง 1 ถึง 3:
#get rows 1 through 3
df %>% slice(1:3)
team points assists
1 A 1 1
2 to 2 5
3 To 3 2
ตัวอย่างที่ 4: บรรทัดย่อยตามกลุ่ม
รหัสต่อไปนี้แสดงวิธีการใช้ฟังก์ชัน Slice() เพื่อเลือกแถวแรกของบางกลุ่ม:
#get first row by group
df %>%
group_by(team) %>%
slice(1)
# A tibble: 3 x 3
# Groups: team [3]
team points assists
1 A 1 1
2 B 4 3
3 C 6 2
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการใช้งานฟังก์ชันทั่วไปอื่นๆ โดยใช้ dplyr:
วิธีลบแถวโดยใช้ dplyr
วิธีจัดเรียงแถวโดยใช้ dplyr
วิธีกรองตามเงื่อนไขต่างๆ โดยใช้ dplyr