将functon应用于另一列上的条件列

时间:2016-12-28 07:06:00

标签: r data.table

我有一个data.table“temp”

library(data.table)
library(stringr) 

temp <- data.table(name=c("test1","test2","test3","test4"), 
                   country=c("usa","usa","mexico","mexico"))

我想以data.table方式将功能应用于国家为“usa”的列“name”。

例如,从str_replace()应用函数stringr

str_replace( temp[country == "usa"]$name ,'\\w*[a-z]', '')

欢迎任何建议或链接!

1 个答案:

答案 0 :(得分:0)

我们可以使用

library(data.table)
setDT(temp)[country=="usa", name := str_replace(name, "\\w*[a-z]", "")]