코딩, 딱 지금이 시작할때! (코딱지)
[R] 행 이름 기준으로 리스트 안의 여러 데이프레임 합치기
Ufungi
2025. 4. 22. 08:42
> str(metcyc_list)
List of 6
$ S10:'data.frame': 411 obs. of 12 variables:
..$ A1 : num [1:411] 346 65.7 26.9 173.9 384.5 ...
..$ A2 : num [1:411] 307.5 75.3 33.7 173.5 367.8 ...
..$ A3 : num [1:411] 325.5 77.9 23.4 196.9 373.8 ...
..$ A3055: num [1:411] 318.2 75.7 15.8 147.6 360.4 ...
..$ A3151: num [1:411] 327.1 67.5 22.6 170.3 336.2 ...
..$ A3204: num [1:411] 319.6 104.2 71.2 213 351.5 ...
..$ A3235: num [1:411] 267.1 78.2 47.4 138.8 335.1 ...
..$ A3583: num [1:411] 285.9 79.1 24 161.8 345.8 ...
..$ A3838: num [1:411] 411 138 106 255 463 ...
..$ A4 : num [1:411] 454.3 66.5 19 193.5 519.1 ...
..$ A5 : num [1:411] 302.5 80.8 42.2 170.3 316.2 ...
..$ A6 : num [1:411] 311.4 83.3 16.6 158.2 367.1 ...
$ S18:'data.frame': 386 obs. of 4 variables:
..$ B_1 : num [1:386] 31519.9 2968.2 68.1 5908.5 29076.4 ...
..$ BC_1: num [1:386] 24934 746 0 451 21638 ...
..$ Y_1 : num [1:386] 18927 1912 0 4672 32534 ...
..$ YC_1: num [1:386] 22148 748 0 4736 24660 ...
$ S20:'data.frame': 432 obs. of 14 variables:
..$ 16S.DD1 : num [1:432] 2476 643 334 1594 2904 ...
..$ 16S.DD3 : num [1:432] 2463 633 344 1588 2862 ...
..$ 16S.DD5 : num [1:432] 2484 628 328 1567 2889 ...
..$ 16S.DD8 : num [1:432] 2486 619 347 1554 2854 ...
..$ 16S.DI2 : num [1:432] 2983 771 366 1778 3297 ...
..$ 16S.DI4 : num [1:432] 3004 744 356 1700 3292 ...
..$ 16S.DI5 : num [1:432] 2915 735 345 1706 3199 ...
..$ 16S.DI7 : num [1:432] 3098 790 345 1780 3342 ...
..$ 16S.DI8 : num [1:432] 2989 727 354 1781 3327 ...
..$ 16S.DI9 : num [1:432] 2964 740 345 1746 3285 ...
..$ 16S.UD10: num [1:432] 2942 730 181 1726 3203 ...
..$ 16S.UD3 : num [1:432] 2918 685 181 1744 3102 ...
..$ 16S.UD4 : num [1:432] 2956 848 188 1837 3124 ...
..$ 16S.UD9 : num [1:432] 3120 755 172 1843 3342 ...
$ S22:'data.frame': 422 obs. of 18 variables:
..$ ASA1: num [1:422] 45237.2 4487.5 11.1 11908.7 42245.1 ...
..$ ASA2: num [1:422] 48552 4836 139 11537 45116 ...
..$ ASA3: num [1:422] 56031 4563 212 8016 51520 ...
..$ ASB1: num [1:422] 50520 4699 103 10621 51139 ...
..$ ASB2: num [1:422] 50259.2 5317.6 19.4 10039.8 50373.7 ...
..$ ASB3: num [1:422] 49654.5 5174.4 20.2 10467 51011.4 ...
..$ ASC1: num [1:422] 42068.27 3686.47 7.59 11172.06 42012.75 ...
..$ ASC2: num [1:422] 40280 3109 20 10257 40640 ...
..$ ASC3: num [1:422] 41705.82 3488.76 7.43 10810.66 40908.43 ...
..$ BSA1: num [1:422] 47431 4858.78 1.98 16148.89 47608.46 ...
..$ BSA2: num [1:422] 45868.1 4670 27.3 15609.5 45358.8 ...
..$ BSA3: num [1:422] 46912.4 4304.2 28.6 14467.8 43242.5 ...
..$ BSB1: num [1:422] 44145.69 3352.81 8.98 11289.72 41543.07 ...
..$ BSB2: num [1:422] 46007.6 7285.9 35.3 10912 43678.1 ...
..$ BSB3: num [1:422] 42582.9 3305.8 10.7 12003.3 45050.3 ...
..$ BSC1: num [1:422] 47478.37 5260.56 5.88 13120.02 45061.11 ...
..$ BSC2: num [1:422] 47626.49 5020.35 5.88 13054.32 44733.23 ...
..$ BSC3: num [1:422] 47174.6 5243.2 13.4 14400.4 45944.5 ...
$ S7 :'data.frame': 296 obs. of 2 variables:
..$ GB_fairy_out_Bac : num [1:296] 231.9 118.3 19.5 173.5 223.5 ...
..$ GB_fairy_ring_Bac: num [1:296] 158.8 21.4 14.9 85.2 170 ...
$ S9 :'data.frame': 335 obs. of 9 variables:
..$ PM_Soil_Bacteria_G1: num [1:335] 48.5 54 0 55 62.7 ...
..$ PM_Soil_Bacteria_G2: num [1:335] 83.3 70 67.4 83.4 100.5 ...
..$ PM_Soil_Bacteria_G3: num [1:335] 11.4 0 0 0 16.6 ...
..$ PM_Soil_Bacteria_G4: num [1:335] 50.9 39.25 9.92 26.61 73.05 ...
..$ PM_Soil_Bacteria_G5: num [1:335] 105 11.96 4.95 44.32 98.89 ...
..$ PM_Soil_Bacteria_G6: num [1:335] 42.8 19.1 10.2 22.3 57.9 ...
..$ PM_Soil_Bacteria_H1: num [1:335] 97.5 33.5 0 0 110 ...
..$ PM_Soil_Bacteria_H5: num [1:335] 44 14.3 14.1 23.8 32.5 ...
..$ PM_Soil_Bacteria_H6: num [1:335] 109.62 62.12 4.52 87.19 117.55 ...
merged_df <- metcyc_list %>%
map(~ .x %>% rownames_to_column("id")) %>%
purrr::reduce(full_join, by = "id") %>%
column_to_rownames("id")