Я пытаюсь скопировать строку перед несколькими символами в столбце вместе в R. Позвольте мне объяснить на примере
data <- data.frame(c("1_a-b","2: b-c","3_c-d"))
colnames(data) <- "ABC"
Я хочу, чтобы окончательный набор данных выглядел следующим образом:
data <- data.frame(c("a-b","b-c","c-d"))
colnames(data) <- "ABC"
Я делаю это:
if(any(grepl(":|_", data$ABC))){
data$ABC <- gsub(".*_", "", data$ABC)
}
Я пытался использовать трубу "|" добавить еще одно условие, например:
if(any(grepl(":|_", data$ABC))){
data$ABC <- gsub(".*_"|".*:", "", data$ABC)
}
Но это не работает. Есть ли способ сделать это за один шаг? Кроме того, я должен проверить, есть ли в столбце эти символы или нет, таким образом, grepl.