您好我有一个数据框,其中一列是变量是电子邮件。不幸的是,出了点问题,一些电子邮件ID的数字前缀由下划线分隔。这些是我注意到的两种模式。
如果我们从左边开始处理,有没有办法在下划线后提取数据。可以构建一些逻辑,以便脚本足够智能,以检查是否有一个下划线或两个下划线。我可以使用find()
和right()
函数在excel中执行此操作,但想知道如何在R中完成此操作。
例如:
product$email
83837_83838_abcd@gmail.com
83837_abcd@gmail.com
output
abcd@gmail.com
abcd@gmail.com
答案 0 :(得分:2)
我们可以使用sub
sub('.*_', '', str1)
#[1] "abcd@gmail.com" "abcd@gmail.com"
或者
library(stringr)
str_extract(str1, '[^_]+$')
str1 <- c('83837_83838_abcd@gmail.com', '83837_abcd@gmail.com')