Your expected output seem to be a string, I would suggest you will stay in the integer world for efficiency and convenience, something like (the idea’s taken from here)
((dataset / 100) %% 1) * 100 
## [1]  1  2  3  4  5  6  7  8  9 10 11 12
## OR just `dataset - 201600` ?
You could also easily achieve this using substring (if you want a character vector in return)
substring(dataset, 5)
# [1] "01" "02" "03" "04" "05" "06" "07" "08" "09" "10" "11" "12"
Or you could do a date manipulation
as.POSIXlt(paste0(as.character(dataset), "01"), format = "%Y%m%d")$mon + 1L
# [1]  1  2  3  4  5  6  7  8  9 10 11 12
solved Drop part of an integer in R [duplicate]