我有一些带有基因符号信息的数据框。我使用一个生成{combin
}的函数df [1:300]
将数据帧成对组合,其中每一行对应两个数据帧的组合。
我需要在循环中自动在每个组合之间获取相同的符号基因。另外,我还需要分别在不同的载体或df的不同行和列上获得df组合之间的共有基因。
我能够在循环中以自动化方式为每种组合找到相同的基因,但是输出结果是单个载体,其中包含每种组合的所有基因,并且我无法识别每种组合的共同基因
df1, df2, df3 ...
ALL_df <- c("df1", "df2", "df3", ...)
df <- data.frame(t(data.frame(combn(ALL_df, 2, simplify = FALSE), stringsAsFactors = F)), row.names = NULL,stringsAsFactors = F)
loop <- function(df,df1, df2, df3){
res <- NULL
for(i in 1:nrow(df)){
y <- unlist(df[i,])
message(paste(y[1], y[2], sep = " x "))
Combination <- do.call(cbind,mget(y))
rownames(combination) <- NULL
res <- c(res,paste0(intersect(combination [1], combination[2])))
}
res
}
lopp (df,df1, df2, df3, ...)