Як видалити перший символ із рядків за допомогою dplyr
Ви можете використовувати наступний базовий синтаксис у dplyr , щоб видалити перший символ із кожного рядка в певному стовпці:
library (dplyr) df_new <- df %>% mutate(across(c(' my_column '), substr, 2 , nchar(my_column)))
Цей конкретний синтаксис видаляє перший символ кожного рядка зі стовпця під назвою my_column .
Зауважте, що ми використовуємо функцію substr() для вилучення підрядка з другого символу кожного рядка до довжини рядка.
Це призводить до видалення першого символу з рядка.
У наступному прикладі показано, як використовувати цей синтаксис на практиці.
Приклад: видалити перший символ із рядків за допомогою dplyr
Припустимо, що ми маємо наступний кадр даних у 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
Припустімо, ми хочемо видалити перший символ із кожного рядка в стовпці team .
Для цього ми можемо використати такий синтаксис:
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() , щоб отримати підрядок від другого символу до останнього символу кожного рядка, що еквівалентно видаленню першого символу кожного рядка.
Примітка : якщо ви хочете видалити перший символ із кількох рядків стовпців, просто додайте кілька імен стовпців у функцію cross() .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в dplyr:
Як видалити рядки за допомогою dplyr
Як вибрати стовпці за індексом за допомогою dplyr
Як фільтрувати рядки, що містять певний рядок, за допомогою dplyr