您没有解释如何计划将最后一个没有公共键的数据集与任何其他数据集合并,因此我将在下面的示例中省略第四个数据集。
要合并这三个数据集,我们可以使用
dplyr::full_join
它执行完全外部联接,并通过公共键自动拾取和合并条目。
Reduce(dplyr::full_join, list(df1, df2, df2))
# Glucose Fructose Ox_Phos TCA Sucrose ATP
#1 CACNA1I PIK3CA FYN GYG1 MAP3k11 CACNA1I
#2 PLCB2 FGFR1 ITGA2B <NA> CACNA2D2 ITGA2B
#3 CACNG1 PIK3R1 PIK3CA <NA> <NA> <NA>
#4 CACNA2D2 PIK3C2G PIK3R1 <NA> <NA> <NA>
#5 MAP3K11 PIK3R5 PIK3R5 <NA> <NA> <NA>
#6 <NA> <NA> FGFR1 <NA> PIK3R5 <NA>
#7 <NA> <NA> <NA> <NA> CACNG1 <NA>
样本数据
df1 <- read.table(text =
"Glucose Fructose Ox_Phos
CACNA1I PIK3CA FYN
PLCB2 FGFR1 ITGA2B
CACNG1 PIK3R1 PIK3CA
CACNA2D2 PIK3C2G PIK3R1
MAP3K11 PIK3R5 PIK3R5", header = T, stringsAsFactors = F)
df2 <- read.table(text =
"TCA Ox_Phos Sucrose ATP
GYG1 FYN MAP3k11 CACNA1I
NA ITGA2B CACNA2D2 ITGA2B
NA FGFR1 PIK3R5 NA
NA NA CACNG1 NA", header = T, stringsAsFactors = F)
df3 <- read.table(text =
"Fructose Galactose
PIK3CA CACNG1
FGFR1 NA
PIK3R1 NA
PIK3C2G NA
PIK3R5 NA", header = T, stringsAsFactors = F)