我有以下数据集。
我希望能够删除重复内容,使我的输出变为:
我尝试了这个方法,但是对于第二行没有起作用。
df <- data.frame(
path = c("a,b,a",
"(direct) / (none), (direct) / (none), google / cpc, google / cpc",
"f,d",
"a,c"
)
)
我希望能够删除重复内容,使我的输出变为:
path
1: a, b
2: (direct) / (none), google / cpc
3: f, d
4: a, c
我尝试了这个方法,但是对于第二行没有起作用。
setDT(df)
df$path <- sapply(strsplit(as.character(df$path ), split=","), function(x) {
paste(unique(x), collapse = ', ')
})
split=",\\s*"
去除不必要的空格。此外,如果你打算使用data.table
,请使用适当的语法避免复制:df[,path:=sapply(strsplit(as.character(df$path ), split=",\\s*"), function(x) {paste(unique(x), collapse = ', ')})]
。 - nicola