【发布时间】:2021-03-23 23:33:02
【问题描述】:
我在尝试用自值替换的列中有一组分组的值
col1
a
a;a;b;c
c;b;a
NA
b;b;b
我想用mixed 或单个当前值替换所有值,例如a;a;a;a 变为a
预期输出
col1
a
Mixed
Mixed
NA
b
代码
grouping = function(x){
y = as.list(strsplit(x, ";")[[1]])
#select first element, and test if each is the same element.
z = ""
for (i in 1:length(y)){
if (as.character(y[1]) != as.character(y[i])) {
z = 'mixed'
break
} else {
z = as.character(y[1])
}
}
return(z)
}
db %>%
select(col1) %>%
mutate(
test = grouping(col1)
)
我已经尝试了几种不同的方法,要么最终导致它根本不起作用,要么为所有内容赋予值 a
【问题讨论】:
-
好电话,已更新
标签: r dataframe dplyr user-defined-functions