Pio*_*icz 0 string statistics replace r grepl
我在R中有关于字符串操作的问题.我有一个包含两列的数据框:
NAME DATE
xxx-test-xx 2015-02-03
Frank 2015-02-01
Steve 2014-09-31
132-test-ggg 2012-12-09
Run Code Online (Sandbox Code Playgroud)
我想将包含单词"test"的NAME列中的所有案例更改为一个名称 - 例如"TEST".我准备了如下代码,但它不起作用 - 找不到合适的案例,因为它们应该是.NAME变量中的观察没有任何特定模式.你能告诉我怎么解决吗?
dataset$EMAIL <- as.character(dataset$EMAIL)
for (i in 1:length(dataset)) {
if(grepl("test", dataset$EMAIL[i], ignore.case=TRUE)) {
dataset$EMAIL[i] <- "TEST"
}
}
Run Code Online (Sandbox Code Playgroud)
执行此操作时length(dataset),将返回数据框中的列数,而不是行数.要修复你的循环,你可以做到1:nrow(dataset).但实际上你可以for在这种情况下彻底摆脱循环并做到
dataset$EMAIL <- as.character(dataset$EMAIL)
dataset$EMAIL[grepl("test", dataset$EMAIL, ignore.case=T)] <- "TEST"
Run Code Online (Sandbox Code Playgroud)