Один из вариантов - использовать str_remove
, чтобы найти ноль или более пробелов (\\s*
), за которыми следуют буквы «A», «P», «M» в конце ($
) строки * 1004.*
library(stringr)
library(dplyr)
df1 %>%
mutate(Start.time = str_remove(Start.time, "\\s*[APM]+$"))
В base R
это можно сделать с помощью sub
df1$Start.time <- sub("\\s*[APM]+$", "", df1$Start.time)
или substr
trimws(substr(df1$Start.time, 1, 5))