วิธีลบอักขระตัวแรกออกจากสตริงโดยใช้ dplyr


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้ใน dplyr เพื่อลบอักขระตัวแรกออกจากแต่ละสตริงในคอลัมน์ใดคอลัมน์หนึ่ง:

 library (dplyr)

df_new <- df %>% mutate(across(c(' my_column '), substr, 2 , nchar(my_column)))

ไวยากรณ์เฉพาะนี้จะลบอักขระตัวแรกของแต่ละสตริงออกจากคอลัมน์ชื่อ my_column

โปรดทราบว่าเราใช้ฟังก์ชัน substr() เพื่อแยกสตริงย่อยจากอักขระตัวที่สองของแต่ละสตริงจนถึงความยาวของสตริง

ซึ่งมีผลในการลบอักขระตัวแรกออกจากสตริง

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: ลบอักขระตัวแรกออกจากสตริงโดยใช้ dplyr

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

 #create data frame
df <- data. frame (team=c('XMavs', 'XPacers', 'XHawks', 'XKings', 'XNets', 'XCeltics'),
                 points=c(104, 110, 134, 125, 114, 124))

#view data frame
df

      team points
1 XMavs 104
2 XPacers 110
3XHawks 134
4 XKings 125
5 XNets 114
6 XCeltics 124

สมมติว่าเราต้องการลบอักขระตัวแรกออกจากแต่ละสตริงในคอลัมน์ ทีม

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อทำสิ่งนี้:

 library (dplyr)

#remove first character from each string in 'team' column
df_new <- df %>% mutate(across(c(' team '), substr, 2 , nchar(team)))

#view updated data frame
df_new

     team points
1 Mavs 104
2 Pacers 110
3 Hawks 134
4 Kings 125
5 Nets 114
6 Celtics 124

โปรดทราบว่าอักขระตัวแรกของแต่ละสตริงในคอลัมน์ ทีม ได้ถูกลบออกแล้ว

โปรดทราบว่าฟังก์ชัน nchar() ใช้ในการคำนวณจำนวนอักขระทั้งหมดในสตริง

ดังนั้นเราจึงใช้ฟังก์ชัน substr() เพื่อแยกสตริงย่อยจากอักขระตัวที่สองไปยังอักขระตัวสุดท้ายของแต่ละสตริง ซึ่งเทียบเท่ากับการลบอักขระตัวแรกของแต่ละสตริง

หมายเหตุ : หากคุณต้องการลบอักขระตัวแรกออกจากสตริงคอลัมน์หลายรายการ เพียงรวมชื่อคอลัมน์หลายคอลัมน์ในฟังก์ชัน across()

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

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

วิธีลบแถวโดยใช้ dplyr
วิธีเลือกคอลัมน์ตามดัชนีโดยใช้ dplyr
วิธีกรองแถวที่มีสตริงบางตัวโดยใช้ dplyr

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

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