Match Two Data Frames Based on Sample ID
match_samples.Rd
Given two data frames, this function matches their rows
based on the intersection of a unique sample identifier column,
idcol
.
The returned data frames are ordered by idcol
and containing
only rows based on the intersection of idcol
values.
Examples
df <- head(simdata, 25L)
train <- withr::with_seed(1, dplyr::sample_n(df, 15L))
new <- withr::with_seed(2, dplyr::sample_n(df, 15L))
intersect(train$SampleId, new$SampleId) # overlapping IDs exist
#> [1] "001" "002" "011" "022" "016" "006" "023"
dfs <- match_samples(train, new)
dfs
#> $train
#> id class_response reg_response time status SampleId
#> 51966571_1 001 control -366.35853 0.17938352 1 001
#> 28704098_1 002 control 619.94832 0.16790617 1 002
#> 74703475_1 006 control 1058.02773 0.45642321 0 006
#> 51134040_1 011 control 48.80594 2.37070639 0 011
#> 93503102_1 016 control 223.59018 0.24184832 0 016
#> 46713227_1 022 control 567.17647 0.03049982 1 022
#> 65338817_1 023 control -263.84427 0.25094150 1 023
#> SlideId Subarray SiteId age gender HybControlNormScale
#> 51966571_1 51966571 1 Isengard 56 M 0.6687581
#> 28704098_1 28704098 1 Rivendell 40 F 1.9342019
#> 74703475_1 74703475 1 Mordor 41 F 2.0788480
#> 51134040_1 51134040 1 Mordor 37 M 1.7756260
#> 93503102_1 93503102 1 Rohan 49 M 2.0030241
#> 46713227_1 46713227 1 Shire 29 M 0.6111657
#> 65338817_1 65338817 1 Rohan 30 M 1.8143705
#> NormScale_40 NormScale_0_005 NormScale_1 seq.2802.68
#> 51966571_1 1.8977914 0.5510880 0.4316258 2186.8
#> 28704098_1 0.5486117 0.9991240 0.5249539 2591.8
#> 74703475_1 0.7958873 1.2270788 1.0426147 2089.8
#> 51134040_1 1.5700662 1.2384780 1.3697496 3255.9
#> 93503102_1 0.5603863 0.4237175 0.7158650 2477.5
#> 46713227_1 0.7725000 0.8013179 1.0183998 2891.1
#> 65338817_1 1.3366064 0.9539156 1.1823144 2537.3
#> seq.9251.29 seq.1942.70 seq.5751.80 seq.9608.12 seq.3459.49
#> 51966571_1 2699.1 2189.8 2725.1 2704.7 2304.2
#> 28704098_1 2194.0 2521.1 2490.7 3344.4 2826.8
#> 74703475_1 3490.2 3383.6 1962.4 3748.8 2952.7
#> 51134040_1 3700.8 2182.1 2712.6 2417.8 2837.9
#> 93503102_1 2594.4 2303.6 3603.1 3259.9 2667.5
#> 46713227_1 2145.0 3171.5 2552.9 2501.1 2382.1
#> 65338817_1 2805.4 2392.7 2728.5 2184.8 2424.5
#> seq.3865.56 seq.3363.21 seq.4487.88 seq.5994.84 seq.9011.72
#> 51966571_1 865.1 1984.3 1702.9 2256.7 2240.4
#> 28704098_1 2197.1 2328.6 2591.1 2870.7 1911.3
#> 74703475_1 3255.8 2590.7 3185.4 4230.9 2516.7
#> 51134040_1 2668.8 2353.3 2818.3 2412.0 2107.0
#> 93503102_1 2134.8 1627.1 2468.5 2062.3 2121.7
#> 46713227_1 2856.1 2751.8 3310.7 3110.6 1635.4
#> 65338817_1 2106.6 2068.5 2150.1 2316.0 2760.9
#> seq.2902.23 seq.2260.48 seq.4936.96 seq.2277.95 seq.2953.31
#> 51966571_1 2543.3 2775.9 2758.1 1212.2 2608.4
#> 28704098_1 3077.6 2131.6 2443.0 3062.4 2228.8
#> 74703475_1 3690.1 2378.7 2955.7 3081.6 2844.6
#> 51134040_1 2942.9 2917.9 3216.2 2563.9 2783.3
#> 93503102_1 2190.1 3032.0 1993.5 1270.9 2584.5
#> 46713227_1 2792.3 2716.9 2792.7 2557.8 2582.6
#> 65338817_1 3117.2 2143.2 2600.5 2818.6 3153.8
#> seq.3032.11 seq.4330.4 seq.4914.10 seq.3896.5 seq.5002.7
#> 51966571_1 2842.4 3107.4 1080.2 1908.9 1677.7
#> 28704098_1 2442.4 1726.1 3255.7 2728.1 2090.0
#> 74703475_1 1636.9 3262.3 2624.6 1402.9 2473.8
#> 51134040_1 2713.8 2387.3 2346.5 2675.7 2248.7
#> 93503102_1 2711.8 1978.7 2665.2 2210.7 2255.2
#> 46713227_1 2000.1 2833.4 3023.2 1891.5 1870.8
#> 65338817_1 3436.9 2431.7 2173.6 2585.1 2737.9
#> seq.3476.4 seq.1130.49 seq.6356.60 seq.4579.40 seq.8344.24
#> 51966571_1 1423.4 2780.6 2187.7 2071.7 2588.3
#> 28704098_1 2213.6 2253.7 2997.0 2916.6 3344.5
#> 74703475_1 2099.1 2395.7 2611.7 2811.1 2159.3
#> 51134040_1 2885.7 2176.3 2997.2 2301.2 2566.3
#> 93503102_1 3162.5 2436.4 3326.5 2455.0 2226.8
#> 46713227_1 2940.9 3062.4 2215.8 1931.1 2266.8
#> 65338817_1 2789.1 2840.8 3001.6 2465.5 1444.1
#> seq.8441.53 seq.9360.55 seq.7841.8 seq.8142.63 seq.4461.56
#> 51966571_1 1934.0 2516.7 3183.7 2022.1 2129.6
#> 28704098_1 2198.4 1770.8 2986.6 2190.0 2406.5
#> 74703475_1 862.9 2248.4 3356.2 2125.7 3278.4
#> 51134040_1 2619.2 1538.0 1803.0 2420.5 2282.9
#> 93503102_1 2444.7 2400.4 2483.0 2359.3 3021.7
#> 46713227_1 2868.6 3405.6 2518.2 2162.9 2702.6
#> 65338817_1 2724.6 2444.0 2871.8 1629.5 2194.5
#> seq.9297.97 seq.9396.38 seq.3300.26 seq.2772.14 seq.6615.18
#> 51966571_1 2573.8 2292.4 2245.9 3097.3 1802.8
#> 28704098_1 2638.4 2890.1 3326.9 1459.0 2525.6
#> 74703475_1 2881.8 2679.5 1970.4 3192.2 2285.7
#> 51134040_1 3131.0 2315.9 1589.5 2922.8 1730.8
#> 93503102_1 2228.9 1732.2 1688.7 2007.3 3003.9
#> 46713227_1 3033.6 2775.4 2464.5 2749.1 1586.5
#> 65338817_1 3057.8 2499.0 3010.5 2955.3 2364.3
#> seq.8797.98 seq.9879.88 seq.8993.16 seq.9373.82
#> 51966571_1 3272.2 2324.8 2770.5 2355.7
#> 28704098_1 2539.6 2216.5 1371.0 1242.2
#> 74703475_1 3124.3 3337.8 2522.4 2614.3
#> 51134040_1 2114.1 2106.3 2563.3 1486.6
#> 93503102_1 2935.7 2860.6 2499.9 2647.9
#> 46713227_1 2734.0 2976.8 1183.0 2481.4
#> 65338817_1 2984.1 3077.8 2041.5 2271.3
#>
#> $new
#> id class_response reg_response time status SampleId
#> 51966571_1 001 control -366.35853 0.17938352 1 001
#> 28704098_1 002 control 619.94832 0.16790617 1 002
#> 74703475_1 006 control 1058.02773 0.45642321 0 006
#> 51134040_1 011 control 48.80594 2.37070639 0 011
#> 93503102_1 016 control 223.59018 0.24184832 0 016
#> 46713227_1 022 control 567.17647 0.03049982 1 022
#> 65338817_1 023 control -263.84427 0.25094150 1 023
#> SlideId Subarray SiteId age gender HybControlNormScale
#> 51966571_1 51966571 1 Isengard 56 M 0.6687581
#> 28704098_1 28704098 1 Rivendell 40 F 1.9342019
#> 74703475_1 74703475 1 Mordor 41 F 2.0788480
#> 51134040_1 51134040 1 Mordor 37 M 1.7756260
#> 93503102_1 93503102 1 Rohan 49 M 2.0030241
#> 46713227_1 46713227 1 Shire 29 M 0.6111657
#> 65338817_1 65338817 1 Rohan 30 M 1.8143705
#> NormScale_40 NormScale_0_005 NormScale_1 seq.2802.68
#> 51966571_1 1.8977914 0.5510880 0.4316258 2186.8
#> 28704098_1 0.5486117 0.9991240 0.5249539 2591.8
#> 74703475_1 0.7958873 1.2270788 1.0426147 2089.8
#> 51134040_1 1.5700662 1.2384780 1.3697496 3255.9
#> 93503102_1 0.5603863 0.4237175 0.7158650 2477.5
#> 46713227_1 0.7725000 0.8013179 1.0183998 2891.1
#> 65338817_1 1.3366064 0.9539156 1.1823144 2537.3
#> seq.9251.29 seq.1942.70 seq.5751.80 seq.9608.12 seq.3459.49
#> 51966571_1 2699.1 2189.8 2725.1 2704.7 2304.2
#> 28704098_1 2194.0 2521.1 2490.7 3344.4 2826.8
#> 74703475_1 3490.2 3383.6 1962.4 3748.8 2952.7
#> 51134040_1 3700.8 2182.1 2712.6 2417.8 2837.9
#> 93503102_1 2594.4 2303.6 3603.1 3259.9 2667.5
#> 46713227_1 2145.0 3171.5 2552.9 2501.1 2382.1
#> 65338817_1 2805.4 2392.7 2728.5 2184.8 2424.5
#> seq.3865.56 seq.3363.21 seq.4487.88 seq.5994.84 seq.9011.72
#> 51966571_1 865.1 1984.3 1702.9 2256.7 2240.4
#> 28704098_1 2197.1 2328.6 2591.1 2870.7 1911.3
#> 74703475_1 3255.8 2590.7 3185.4 4230.9 2516.7
#> 51134040_1 2668.8 2353.3 2818.3 2412.0 2107.0
#> 93503102_1 2134.8 1627.1 2468.5 2062.3 2121.7
#> 46713227_1 2856.1 2751.8 3310.7 3110.6 1635.4
#> 65338817_1 2106.6 2068.5 2150.1 2316.0 2760.9
#> seq.2902.23 seq.2260.48 seq.4936.96 seq.2277.95 seq.2953.31
#> 51966571_1 2543.3 2775.9 2758.1 1212.2 2608.4
#> 28704098_1 3077.6 2131.6 2443.0 3062.4 2228.8
#> 74703475_1 3690.1 2378.7 2955.7 3081.6 2844.6
#> 51134040_1 2942.9 2917.9 3216.2 2563.9 2783.3
#> 93503102_1 2190.1 3032.0 1993.5 1270.9 2584.5
#> 46713227_1 2792.3 2716.9 2792.7 2557.8 2582.6
#> 65338817_1 3117.2 2143.2 2600.5 2818.6 3153.8
#> seq.3032.11 seq.4330.4 seq.4914.10 seq.3896.5 seq.5002.7
#> 51966571_1 2842.4 3107.4 1080.2 1908.9 1677.7
#> 28704098_1 2442.4 1726.1 3255.7 2728.1 2090.0
#> 74703475_1 1636.9 3262.3 2624.6 1402.9 2473.8
#> 51134040_1 2713.8 2387.3 2346.5 2675.7 2248.7
#> 93503102_1 2711.8 1978.7 2665.2 2210.7 2255.2
#> 46713227_1 2000.1 2833.4 3023.2 1891.5 1870.8
#> 65338817_1 3436.9 2431.7 2173.6 2585.1 2737.9
#> seq.3476.4 seq.1130.49 seq.6356.60 seq.4579.40 seq.8344.24
#> 51966571_1 1423.4 2780.6 2187.7 2071.7 2588.3
#> 28704098_1 2213.6 2253.7 2997.0 2916.6 3344.5
#> 74703475_1 2099.1 2395.7 2611.7 2811.1 2159.3
#> 51134040_1 2885.7 2176.3 2997.2 2301.2 2566.3
#> 93503102_1 3162.5 2436.4 3326.5 2455.0 2226.8
#> 46713227_1 2940.9 3062.4 2215.8 1931.1 2266.8
#> 65338817_1 2789.1 2840.8 3001.6 2465.5 1444.1
#> seq.8441.53 seq.9360.55 seq.7841.8 seq.8142.63 seq.4461.56
#> 51966571_1 1934.0 2516.7 3183.7 2022.1 2129.6
#> 28704098_1 2198.4 1770.8 2986.6 2190.0 2406.5
#> 74703475_1 862.9 2248.4 3356.2 2125.7 3278.4
#> 51134040_1 2619.2 1538.0 1803.0 2420.5 2282.9
#> 93503102_1 2444.7 2400.4 2483.0 2359.3 3021.7
#> 46713227_1 2868.6 3405.6 2518.2 2162.9 2702.6
#> 65338817_1 2724.6 2444.0 2871.8 1629.5 2194.5
#> seq.9297.97 seq.9396.38 seq.3300.26 seq.2772.14 seq.6615.18
#> 51966571_1 2573.8 2292.4 2245.9 3097.3 1802.8
#> 28704098_1 2638.4 2890.1 3326.9 1459.0 2525.6
#> 74703475_1 2881.8 2679.5 1970.4 3192.2 2285.7
#> 51134040_1 3131.0 2315.9 1589.5 2922.8 1730.8
#> 93503102_1 2228.9 1732.2 1688.7 2007.3 3003.9
#> 46713227_1 3033.6 2775.4 2464.5 2749.1 1586.5
#> 65338817_1 3057.8 2499.0 3010.5 2955.3 2364.3
#> seq.8797.98 seq.9879.88 seq.8993.16 seq.9373.82
#> 51966571_1 3272.2 2324.8 2770.5 2355.7
#> 28704098_1 2539.6 2216.5 1371.0 1242.2
#> 74703475_1 3124.3 3337.8 2522.4 2614.3
#> 51134040_1 2114.1 2106.3 2563.3 1486.6
#> 93503102_1 2935.7 2860.6 2499.9 2647.9
#> 46713227_1 2734.0 2976.8 1183.0 2481.4
#> 65338817_1 2984.1 3077.8 2041.5 2271.3
#>