Удаление частей строки из строк фрейма данных в R - PullRequest
1 голос
/ 26 мая 2020

У меня есть столбец фрейма данных со строкой, за которой следует десятичная дробь и число (например, data <- data.frame(ID = c("alpha.1","alpha.2", "alpha.3", "beta.1", "beta.2", "beta.3")). Как я могу удалить только десятичную дробь и число и оставить слово?

1 Ответ

2 голосов
/ 26 мая 2020

Мы можем использовать sub, чтобы сопоставить ., за которым следует одна или несколько цифр (\\d+) в конце ($) строки, и заменить пробелом ("")

data$ID <- sub("\\.\\d+$", "", data$ID)
data$ID
#[1] "alpha" "alpha" "alpha" "beta"  "beta"  "beta"

Или другой вариант: trimws

data$ID <- trimws(data$ID, whitespace = "\\..*")

Или используя word

library(stringr)
word(data$ID, 1, sep=fixed("."))
#[1] "alpha" "alpha" "alpha" "beta"  "beta"  "beta" 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...