如何在R中使用子功能

娜西亚·贾弗里(Nasia Jaffri)

我正在R中读取一个csv文件“ dopers”。

dopers <- read.csv(file="generalDoping_alldata2.csv", head=TRUE,sep=",")

读取文件后,我必须进行一些数据清理。例如,country如果列中显示

“美国”或“美国”

我想换成 "USA"

我想确保,如果单词是" United States "or "United State ",甚至它们,我的代码也能正常工作。我想说的是,即使用"United States"替换字符前后,也有任何字符"USA"我知道我们可以sub()为此目的使用功能。我一直在网上寻找并发现此问题,但是我不知道该怎么"^" "&" "*" "."做。有人可以解释一下。

dopers$Country = sub("^UNITED STATES.*$", "USA", dopers$Country)
卡斯滕W.

根据您的示例,

s <- c(" United States", " United States ", "United States ")

您可以定义匹配它们的正则表达式模式

pat <- "^.*United State.*$"

在此,^代表$字符串的开始和结尾,而.代表任何字符并*定义一个重复(零到任意)。您可以尝试修改的模式,例如

pat <- "^[ ]*United State[ ]*$" # only ignores spaces
pat <- "^.*(United State|USA).*$" # only matches "  USA" etc.

然后通过以下方式执行替换

gsub(pat, "USA", s)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章