Как удалить постоянные части строки в R - PullRequest
0 голосов
/ 16 ноября 2018

Я хотел бы удалить постоянные (общие) части строки автоматически и сохранить переменные части. например у меня есть столбец со следующим:

D20181116_Basel-Take1_digital
D20181116_Basel-Take2_digital
D20181116_Basel-Take3_digital
D20181116_Basel-Take4_digital
D20181116_Basel-Take5_digital
D20181116_Basel-Take5a_digital

как я могу автоматически получить доступ для любого аналогичного столбца (здесь удаление: "D20181116_Basel-Take" и "_digital"). Но код должен найти саму константу и удалить ее.

1
2
3
4
5
5a

Надеюсь, это понятно. Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 16 ноября 2018

с помощью gsub ():

при условии, что у вас есть фрейм данных df и вы хотите изменить столбец

df$column <- gsub("^D20181116_Basel-Take","",df$column)
df$column <- gsub("_digital$","",df$column)
0 голосов
/ 16 ноября 2018

Вы можете сделать это с помощью регулярного выражения: оно удалит все до 'Take' и после символа подчеркивания:

vec<- c("D20181116_Basel-Take1_digital", 
"D20181116_Basel-Take2_digital",
"D20181116_Basel-Take3_digital",
"D20181116_Basel-Take4_digital",
"D20181116_Basel-Take5_digital",
"D20181116_Basel-Take5a_digital")

sub(".*?Take(.*?)_.*", "\\1", vec)
[1] "1"  "2"  "3"  "4"  "5"  "5a"
...