join_all with type =" full"给出错误的输出

时间:2018-03-29 09:54:33

标签: r join

我创建了我的列表:

datalist = lapply(file_list, function(x){read.csv(file=x,header=F,sep = "\t")})

然后使用join_all:

joined <- join_all(dfs = datalist,by = "V1",type ="left" )  

> head(joined,5)
             V1     V2    V2    V2     V2
1 hsa-let-7a-3p    117   289   127     81
2 hsa-let-7a-5p 119867 84754 73053 101258
3 hsa-let-7b-3p    125   154    70     89
4 hsa-let-7b-5p  89748 61161 54270  47204
5 hsa-let-7c-3p     71    11    90      9

> joined <- join_all(dfs = datalist,by = "V1",type ="full" )

> head(joined,5)
             V1     V2
1 hsa-let-7a-3p    117
2 hsa-let-7a-5p 119867
3 hsa-let-7b-3p    125
4 hsa-let-7b-5p  89748
5 hsa-let-7c-3p     71

我想使用type =&#34; full&#34;这将为不包含特定rownames的样本提供NA。

示例数据: DF1:

hsa-let-7a-3p   118
hsa-let-7a-5p   60832
hsa-let-7b-3p   176
hsa-let-7b-5p   43252
hsa-let-7c-3p   188
hsa-let-7c-5p   21049
hsa-let-7d-3p   1509
hsa-let-7d-5p   509
hsa-let-7e-3p   57
hsa-let-7e-5p   2540
hsa-let-7f-1-3p 12
hsa-let-7f-5p   9940

DF2:

hsa-let-7e-5p   233
hsa-let-7f-1-3p 113
hsa-let-7f-5p   99340
hsa-let-7g-5p   431
hsa-let-7i-3p   2914
hsa-let-7i-5p   703
hsa-miR-1-3p    15
hsa-miR-100-5p  3
hsa-miR-101-3p  110705

1 个答案:

答案 0 :(得分:1)

原因已经确定。 join_all用作合并(rbind),因为所有数据框都具有与V1V2相同的列名。

我将V1的{​​{1}}和V2以及df1的{​​{1}}和V1的列名更改为V3df结果看起来与预期一致。

join_all