【发布时间】:2016-04-11 11:27:39
【问题描述】:
我有一个包含名字和姓氏向量的数据集。我想删除名字并只保留姓氏。虽然姓氏和名字的字数不同,但姓氏总是大写并且在名字之前,而只有名字的第一个字母大写。
换句话说,我有如下内容:
x <- c("AA AA Aa Aa", "BB BB Bb", "CC Cc Cc", "DD Dd")
并且想拥有:
x
[1] "AA AA" "BB BB" "CC" "DD"
我一直在尝试用 stringr 包做到这一点,但它只返回第一个单词的第一个大写字母:
library(stringr)
str_extract(x, "[A-Z]")
[1] "A" "B" "C" "D"
【问题讨论】:
-
str_extract_all(x, "([A-Z]+(?=[^a-z]))")也许?