Можно использовать %/%
с 1000 и вставить "K"
library(dplyr)
library(stringr)
data %>%
mutate(abc = str_c(abc %/% 1000, "K"))
Или, используя sub
, сопоставить 3 нуля в конце ($
) изстроку и замените на "K"
options(scipen = 999)
sub("0{3}$", "K", data$abc)
#[1] "1K" "100K" "450K"
Если у нас другая строка с интервалом, измените шаблон так, чтобы он совпадал с 3 нулями в конце ($
) или перед -
и заменить на «К»
gsub("0{3}(?=-|$)", "K", "150000-250000", perl = TRUE)
#[1] "150K-250K"