Вам нужно разделить строки с помощью .
в качестве разделителя
library(stringr)
# this will create a 2 columns matrix, first column: what comes before .
# second column what comes after
# number of rows = number of rows in df
split_matrix <- str_split_fixed(df$v1,fixed("."),2)
# assign the second column from split_matrix to df$v2
df$v2 <- as.numeric(split_matrix[, 2])
df
# v1 v2
#1 a.1 1
#2 b.3 3
#3 cz.90 90
Изменить, так как ваш вопрос содержал тег tidyverse
, вы можете сделать это следующим образом:
df%>% mutate(v2=as.numeric(str_split_fixed(df$v1,fixed("."),2)[,2]))