วิธีลบแถวสุดท้ายออกจาก data frame โดยใช้ dplyr


คุณสามารถใช้วิธีการต่อไปนี้เพื่อลบแถวสุดท้ายออกจากกรอบข้อมูลใน R:

วิธีที่ 1: ลบแถวสุดท้ายของกรอบข้อมูล

 library (dplyr)

#remove last row from data frame
df <- df %>% filter(row_number() <= n()- 1 )

วิธีที่ 2: ลบ N แถวสุดท้ายของกรอบข้อมูล

 library (dplyr)

#remove last four rows from data frame
df <- df %>% filter(row_number() <= n()- 4 )

หมายเหตุ : ฟังก์ชัน n() จะแยกจำนวนแถวทั้งหมดในกรอบข้อมูล

การใช้ row_number() <= n() เราระบุว่าเราต้องการกรองกรอบข้อมูลให้มีเฉพาะแถวที่มีหมายเลขแถวน้อยกว่าจำนวนแถวทั้งหมดที่มีการลบจำนวนบางส่วนออก

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

 #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: ลบแถวสุดท้ายของกรอบข้อมูล

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

 library (dplyr)

#remove last row from data frame
df <- df %>% filter(row_number() <= n()- 1 )

#view updated 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

โปรดทราบว่าแถวสุดท้ายของกรอบข้อมูลถูกลบไปแล้ว

ตัวอย่างที่ 2: ลบ N แถวสุดท้ายของกรอบข้อมูล

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

 library (dplyr)

#remove last four rows from data frame
df <- df %>% filter(row_number() <= n()- 4 )

#view updated data frame
df

  team points assists
1 to 18 5
2 to 13 7
3 A 19 17
4 B 14 9

โปรดทราบว่ากรอบข้อมูลสี่บรรทัดสุดท้ายถูกลบไปแล้ว

หมายเหตุ : หากต้องการลบจำนวนบรรทัดที่แตกต่างกันออกจากส่วนท้ายของ data frame เพียงแทนที่ 4 ในโค้ดด้วยหมายเลขอื่น

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

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการใช้งานฟังก์ชันทั่วไปอื่น ๆ ใน dplyr:

วิธีเลือกคอลัมน์ตามดัชนีโดยใช้ dplyr
วิธีจัดเรียงตัวแปรตามกลุ่มโดยใช้ dplyr
วิธีแทนที่ NA ด้วย Zero ใน dplyr

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

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