使用字符串库,R中名称的缩写向量

时间:2020-04-03 23:29:49

标签: r

我有这个变量:

names<-c("Sophia Abbe", "Olivia Abbett", "Emma Abbey", "Ava Abbitt", "Isabella Abbot", "Mia Abbott", "Aria Abbs")

我要缩写名字并将其放入向量中。

我想获得一个矢量(“ S. Abbe”,“ O。Abbett”,...,“ A。Abbs”)

使用字符串函数str_c(),str_split()和str_sub()的有效方法是什么?

1 个答案:

答案 0 :(得分:2)

通过匹配小写字母并在sub中用.替换base R的选项

sub("[a-z]+", ".", names)
#[1] "S. Abbe"   "O. Abbett" "E. Abbey"  "A. Abbitt" "I. Abbot"  "M. Abbott" "A. Abbs"  

在此[a-z]+匹配一个或多个低位字符块,即第一个单词中的字符块(因为我们使用的是sub),并替换为""

或使用str_replace

library(stringr)
str_replace(names, "[a-z]+", ".")
相关问题