首页 > 解决方案 > 组合具有不同行数的数据集

问题描述

我有 3 个数据框:data1(12 行)、data2(12 行)和 data3(12 行)。我想将 3 组合成一个数据框,其中一列和 48 行保留所有值。

    data1: 
   [1] "Ank2_S3226"          "Scg2_S556"           "Nefh_S571"          
   [4] "Sgip1_S95"           "Amph_S504"           "Srcin1_S546"        
   [7] "Ank2_S1816"          "Map1b_S1373"         "Asb3_S35"           
  [10] "Scg2_S556"           "Ank2_S1816"          "Mapt_T58" 



    data2:
   [1] "Ank2_ S3229"          "Nefh_ S577"           "Srcin1_ S555"        
   [4] "Ank2_ S1819"          "Map1b_ S1384"         "Ank2_ S1819"         
   [7] "Wdr37_ S24"           "Gmip_ S440"           "Apc_ S"              
  [10] "Nefh_ S679"           "Map1b_ S1384"         "Map1a_ S355"



    data3:
  [1] "Ank2_ S3230"          "Map1a_ S359"          "Crocc_ S501"         
  [4] "Wnk2_ S1754"          "Slc16a1_ S491"        "Srrm2_ S1400"        
  [7] "Map1b_ S1797"         "Ccm2_ S361"           "Camk2a_ T337"        
 [10] "2310035C23Rik_ T/S/Y" "Ank2_ S2583"          "Svop_ S31"

我使用了这个merge()功能data4<- merge(data1, data2, all=TRUE),但它给出了这样的东西

    x           y
1           Ank2_S3226 Ank2_ S3229
2            Scg2_S556 Ank2_ S3229
3            Nefh_S571 Ank2_ S3229
4            Sgip1_S95 Ank2_ S3229
5            Amph_S504 Ank2_ S3229
6          Srcin1_S546 Ank2_ S3229
7           Ank2_S1816 Ank2_ S3229
8          Map1b_S1373 Ank2_ S3229
9             Asb3_S35 Ank2_ S3229
10           Scg2_S556 Ank2_ S3229

请帮忙

标签: r

解决方案


我们可以用c

data.frame(y = c(data1, data2, data3))

推荐阅读