How do I specify a dynamic position for the start of substring?
As in the example, I am trying to substring
the Video_full column in a data.frame
(video_data_2) I am working on. I want to keep all the characters after the period. The period is always present, there is only one period and it is in a different position in each value for the column.
Date Video_full Instances
1 Apr 1, 2010 installs/AA.intro_video_1 546
2 Apr 1, 2010 installs/ABAC.intro_video_2 548
I got substring to work:
video_data_2$Video_full <- substring(video_data_2$Video_full,11)
And strsplit
also:
strsplit("installs/AA.intro_video_1 ",'[.]')
I'm just not able to figure out how to start the substring
in a dynamic position or only keep the second value returned by strsplit
.
Thanks for any help you can offer for a simple question.
Solution 1:
you can use sub()
video_data_2$Video_full <- sub("^.*\\.","", video_data_2$Video_full)
Solution 2:
Another way to use strsplit
sapply(strsplit(video_data_2$Video_full, "\\."), "[", 2)
which is shorthand from
sapply(strsplit(video_data_2$Video_full, "\\."), function(x) x[2])
Solution 3:
Try stringr
library(stringr)
str_split_fixed(video_data_2$Video_full, "\\.", n = 2)[, 2]