Что вы думаете об этом.
Пример данных (ваши данные - воспроизводимые;)):
require(tidyverse)
a <- data.frame(ID = c("TMCS09g1008676",
"TMCS09g1008677",
"TMCS09g1008678",
"TMCS09g1008679",
"TMCS09g1008680" ,
"TMCS09g1008681",
"TMCS09g1008682",
"TMCS09g1008683"), Staus = rep("fleshy"))
b <- data.frame(ID = c( "TMCS09g1008684" ,
"TMCS09g1008685" ,
"TMCS09g1008686" ,
"TMCS09g1008682" ,
"TMCS09g1008688" ,
"TMCS09g1008689" ,
"TMCS09g1008690" ,
"TMCS09g1008691",
"TMCS09g1008683" ,
"TMCS09g1008693"), Staus = rep("rotten"))
c <- data.frame(ID = c( "TMCS09g1008695" ,
"TMCS09g1008696" ,
"TMCS09g1008697" ,
"TMCS09g1008698" ,
"TMCS09g1008683" ,
"TMCS09g1008700" ,
"TMCS09g1008701" ,
"TMCS09g1008702" ,
"TMCS09g1008703" ,
"TMCS09g1008704" ,
"TMCS09g1008705" ), Staus = rep("good"))
Вы можете использовать plyr::join_all
для сопоставления.Поскольку у вас есть дублированные идентификаторы, вам придется открывать новые столбцы, чтобы соответствовать дублированным значениям.
plyr::join_all(list(a,b,c), by = "ID")
Результаты:
ID Staus Staus Staus
1 TMCS09g1008676 fleshy <NA> <NA>
2 TMCS09g1008677 fleshy <NA> <NA>
3 TMCS09g1008678 fleshy <NA> <NA>
4 TMCS09g1008679 fleshy <NA> <NA>
5 TMCS09g1008680 fleshy <NA> <NA>
6 TMCS09g1008681 fleshy <NA> <NA>
7 TMCS09g1008682 fleshy rotten <NA>
8 TMCS09g1008683 fleshy rotten good