我希望将原始ID与新ID匹配,该ID仅是原始ID的片段并返回所有原始ID。防爆。对于data.frame dat
,OrigID
是列名。 ID值为XXX_X_XXX
,新ID仅为下划线符号_
后的最后一部分,即XXX
。我怎么能匹配呢?
我不确定如何只返回片段。我认为这会返回所有点击,而不仅仅是' _'之后的部分。给了我太多的价值观。我还希望在ID不匹配的地方将NA值放在矢量中。
实施例。
IDdat <- read.csv("OrigID.csv")
data <- read.csv("data.csv")
subjects <- unique(data$ID)
IDlist <- c()
for (i in 1:length(subjects)) {
OrigID <- grep(subjects[i], IDdat$ID, value = TRUE)
IDlist <- rbind(IDlist, data.frame(OrigID)
}
谢谢!
答案 0 :(得分:0)
我们可以使用grep
grep(new_ID, colnames(dat))