我有两个dfs,如下所示,并希望合并。我想根据家族列合并这两个dfs,并在不删除最终df中的基因的情况下,为每个基因添加计数,如果它们在第一个df和第二个df之间不常见的话。
#first df
Family <- c("LET-7","LET-7","LET-7","MIR-10","MIR-103","MIR-124","MIR-124","MIR-124")
Sequence <- c("ATCGGCA","ATGCTAC","ATCGGCA","ATCGTTT","TGAGGAG","TGATCAG","AATTCAG","AATTCAG")
my_data_frame <- data.frame(Family,Sequence)#second df
counts <- c("2","3")
Family <- c("LET-7","MIR-124")
countdf <- data.frame(Family,counts)我想要的输出
Family <- c("LET-7","LET-7","LET-7","MIR-10","MIR-103","MIR-124","MIR-124","MIR-124")
Counts <- c("2","2","2","0","0","3","3","3")
Sequence <- c("ATCGGCA","ATGCTAC","ATCGGCA","ATCGTTT","TGAGGAG","TGATCAG","AATTCAG","AATTCAG")
newdf <- data.frame(Family,Counts,Sequence)发布于 2020-02-07 08:50:42
使用包dplyr的解决方案
library(dplyr)
newdf_dplyr <- my_data_frame %>%
left_join(countdf)使用R基的解决方案:
newdf_base <- merge(my_data_frame, countdf, by="Family", all.x=TRUE)https://stackoverflow.com/questions/60109870
复制相似问题