子集行仅包含R中的字母

时间:2016-11-02 13:11:29

标签: r subset letters

我的矢量有大约3000个观察点,如:

clients <- c("Greg Smith", "John Coolman", "Mr. Brown", "John Nightsmith (father)", "2 Nicolas Cage")

如何对仅包含字母名称的行进行子集化。例如,只有Greg Smith,John Coolman(没有像0-9,。?:[}等符号。)。

1 个答案:

答案 0 :(得分:1)

我们可以使用grep仅匹配大写或小写字母以及从字符串的开头(^)到结尾($)的空格。

grep('^[A-Za-z ]+$', clients, value = TRUE)
#[1] "Greg Smith"   "John Coolman"

或者只使用[[:alpha:] ]+

grep('^[[:alpha:] ]+$', clients, value = TRUE)
#[1] "Greg Smith"   "John Coolman"