删除R中字符串中第一个数字/数字后的字符

时间:2016-04-26 12:05:01

标签: r

我正在浏览并清理具有以下位置条目的数据集:“Sarasota Florida6h”我不知道为什么,但所有字符串最后都有3或2个字符,以数字开头:

[413] "Los Angeles11h"                                      "Pittsburgh  PA1h"                                   
[415] "London  UK18h"                                       "Mumbai  India19h"                                   
[417] "Orange County CA1h"                                  "Columbus  OH2d"                                     
[419] "4d"                                                  "Sarasota  Florida6h"                                
[421] "Toronto9m"                                           "Adelaide Australia7h"                               
[423] "Wayland  MA4h"                                       "Scottsdale AZ USA1h"                                
[425] "Sydney  Australia6d"                                 "Connecticut  USA31m"                                
[427] "United States5m"                                     "Boulder  Colorado12h"                               
[429] "Berlin  Germany7h"                                   " India   Chaibasa1h"

我需要一个脚本来删除数字后的所有字母以清除它们: 我已经尝试了下面的内容,但很明显,这里出了点问题。

follow_dat$loc <- sapply(strsplit(follow_dat$Location, "\\[0-9]"), `[[`, 2)

非常感谢您的帮助。 马里

2 个答案:

答案 0 :(得分:1)

如果您的字符串中没有其他数字(如您的示例所示),那么我们可以使用gsub

gsub('[0-9]+[a-z]', '',follow_dat$Location)

答案 1 :(得分:1)

使用正则表达式 例如,你可以这样清理它们:

gsub("[0-9]..*","",follow_dat$Location)

这句话的含义是&#34;在找到一个没有任何内容的数字之后清理所有内容&#39;&#39;在所有follow_dat $ Location&#34;