1 2 1 cg00035864 TTTY18 2 cg00050873 TSPY4;FAM197Y2 3 cg00061679 DAZ1;DAZ4;DAZ4 4 cg00063477 EIF1AY 5 cg00121626 BCORL2 6 cg00212031 TTTY14 很明显这个数据框的第二列并
您可以使用字符串分割函数strsplit()将第二列的每个元素按照分号";"分割成多个子字符串,然后使用函数unique()将所有子字符串去重,最后再使用函数paste()将所有子字符串拼接成一个新的字符串。具体实现代码如下:
将第二列按分号分割成多个子字符串
str_list <- strsplit(df[, 2], ";")
将所有子字符串合并成一个向量
str_vec <- unlist(str_list)
去重得到唯一的子字符串
unique_str <- unique(str_vec)
将唯一的子字符串拼接成一个新的字符串
new_str <- paste(unique_str, collapse = ";")
将第二列替换成新的字符串
df[, 2] <- new_str
这样就将第二列中所有的子字符串合并成了一个唯一的字符串,并且保留了所有数据。
原文地址: https://www.cveoy.top/t/topic/by4N 著作权归作者所有。请勿转载和采集!