Мы можем использовать 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"