Если это последняя цифра, мы можем просто использовать base R
методы для ее извлечения
as.numeric(substring(str1, nchar(str1)))
Или с sub
as.numeric(sub(".*_", "", str1))
#[1] 4 3 6
Если нам нужночтобы разделить его на отдельные столбцы, один параметр - separate
из tidyverse
, который будет split
столбцом на отдельные столбцы на основе разделителя (_
), а также гарантирует, что тип столбца будет convert
ed
library(tidyverse)
data_frame(col1 = str1) %>%
separate(col1, into = c("Author", "Volume", "Issue"), sep = "_", convert = TRUE)
# A tibble: 3 x 3
# Author Volume Issue
# <chr> <chr> <chr>
#1 Hughson.George 54 4
#2 Ifran.Dean 51 3
#3 Houston.Amanda 49 6
данные
str1 <- c("Hughson.George_54_4", "Ifran.Dean_51_3", "Houston.Amanda_49_6")