Удалить все символы до последней запятой в R - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть такая таблица данных:

id       number
1        5562,4024,...,1213 
2        4244,4214,...,244
3        424,4213
4        1213,441
...

И я хочу установить подмножество только последней части каждого столбца числа, которая должна выглядеть следующим образом:

id       number
1        1213
2        244
3        4213
4        441
...

Так, что я должен сделать, чтобы достигнуть этого?

1 Ответ

0 голосов
/ 07 сентября 2018

Одним из вариантов является захват цифр в конце ($) строки как группы, следующей за ,, и замена на обратную ссылку (\\1) захваченной группы

df$number <- as.numeric(sub(".*,(\\d+)$", "\\1", df$number))

Или сопоставлять символы (.*) до , и заменять его пробелом ("")

df$number <- as.numeric(sub(".*,", "", df$number))

Данные

df <- structure(list(id = 1:4, number = c("5562,4024,...,1213", 
    "4244,4214,...,244", 
"424,4213", "1213,441")), class = "data.frame", row.names = c(NA, 
 -4L))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...