在数据帧列中转换向量

时间:2019-04-24 19:20:42

标签: r

我有一些带有基因符号信息的数据框。我使用一个生成{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, ...)

0 个答案:

没有答案