【发布时间】:2014-02-08 05:41:00
【问题描述】:
我已经加载了 20 个带有函数的 csv 文件:
tbl = list.files(pattern="*.csv")
list_of_data = lapply(tbl, read.csv)
我将所有这些文件合二为一:
all_data = do.call(rbind.fill, list_of_data)
在新表中有一个名为“Accession”的列。组合后很多名字(Accession)都被重复了。我想删除所有重复项。 另一个问题是其中一些“名称”几乎相同。不同的是有名字,后面变成点和数字。
让我给你看看它的样子:
AT3G26450.1 <--
AT5G44520.2
AT4G24770.1
AT2G37220.2
AT3G02520.1
AT5G05270.1
AT1G32060.1
AT3G52380.1
AT2G43910.2
AT2G19760.1
AT3G26450.2 <--
<-- = 相同的样本,不同的名称。应视为一。所以忽略点和后面的数字。
试过这个:
all_data$CleanedAccession = str_extract(all_data$Accession, "^[[:alnum:]]+")
all_data = subset(all_data, !duplicated(CleanedAccession))
Error in `$<-.data.frame`(`*tmp*`, "CleanedAccession", value = character(0)) :
【问题讨论】:
-
您是要删除重复的行还是只是通过删除“.X”来重命名它。
-
我想删除带有重复项(Accession)的行,并删除点前具有相同编号的加入。
标签: regex r duplicates