setops: Set operations

Description Usage Arguments Examples

Description

These functions override the set functions provided in base to make them generic so that efficient versions for data frames and other tables can be provided. The default methods call the base versions. Beware that intersect(), union() and setdiff() remove duplicates.

Usage

1
2
3
4
5
6
7
8
9
intersect(x, y, ...)

union(x, y, ...)

union_all(x, y, ...)

setdiff(x, y, ...)

setequal(x, y, ...)

Arguments

x, y

objects to perform set function on (ignoring order)

...

other arguments passed on to methods

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
mtcars$model <- rownames(mtcars)
first <- mtcars[1:20, ]
second <- mtcars[10:32, ]

intersect(first, second)
union(first, second)
setdiff(first, second)
setdiff(second, first)

union_all(first, second)
setequal(mtcars, mtcars[32:1, ])

# Handling of duplicates:
a <- data.frame(column = c(1:10, 10))
b <- data.frame(column = c(1:5, 5))

# intersection is 1 to 5, duplicates removed (5)
intersect(a, b)

# union is 1 to 10, duplicates removed (5 and 10)
union(a, b)

# set difference, duplicates removed (10)
setdiff(a, b)

# union all does not remove duplicates
union_all(a, b)

Example output

Attaching package: 'dplyr'

The following objects are masked from 'package:stats':

    filter, lag

The following objects are masked from 'package:base':

    intersect, setdiff, setequal, union

    mpg cyl  disp  hp drat    wt  qsec vs am gear carb               model
1  19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4            Merc 280
2  17.8   6 167.6 123 3.92 3.440 18.90  1  0    4    4           Merc 280C
3  16.4   8 275.8 180 3.07 4.070 17.40  0  0    3    3          Merc 450SE
4  17.3   8 275.8 180 3.07 3.730 17.60  0  0    3    3          Merc 450SL
5  15.2   8 275.8 180 3.07 3.780 18.00  0  0    3    3         Merc 450SLC
6  10.4   8 472.0 205 2.93 5.250 17.98  0  0    3    4  Cadillac Fleetwood
7  10.4   8 460.0 215 3.00 5.424 17.82  0  0    3    4 Lincoln Continental
8  14.7   8 440.0 230 3.23 5.345 17.42  0  0    3    4   Chrysler Imperial
9  32.4   4  78.7  66 4.08 2.200 19.47  1  1    4    1            Fiat 128
10 30.4   4  75.7  52 4.93 1.615 18.52  1  1    4    2         Honda Civic
11 33.9   4  71.1  65 4.22 1.835 19.90  1  1    4    1      Toyota Corolla
    mpg cyl  disp  hp drat    wt  qsec vs am gear carb               model
1  21.4   4 121.0 109 4.11 2.780 18.60  1  1    4    2          Volvo 142E
2  15.0   8 301.0 335 3.54 3.570 14.60  0  1    5    8       Maserati Bora
3  19.7   6 145.0 175 3.62 2.770 15.50  0  1    5    6        Ferrari Dino
4  15.8   8 351.0 264 4.22 3.170 14.50  0  1    5    4      Ford Pantera L
5  30.4   4  95.1 113 3.77 1.513 16.90  1  1    5    2        Lotus Europa
6  26.0   4 120.3  91 4.43 2.140 16.70  0  1    5    2       Porsche 914-2
7  27.3   4  79.0  66 4.08 1.935 18.90  1  1    4    1           Fiat X1-9
8  19.2   8 400.0 175 3.08 3.845 17.05  0  0    3    2    Pontiac Firebird
9  13.3   8 350.0 245 3.73 3.840 15.41  0  0    3    4          Camaro Z28
10 15.2   8 304.0 150 3.15 3.435 17.30  0  0    3    2         AMC Javelin
11 15.5   8 318.0 150 2.76 3.520 16.87  0  0    3    2    Dodge Challenger
12 21.5   4 120.1  97 3.70 2.465 20.01  1  0    3    1       Toyota Corona
13 33.9   4  71.1  65 4.22 1.835 19.90  1  1    4    1      Toyota Corolla
14 30.4   4  75.7  52 4.93 1.615 18.52  1  1    4    2         Honda Civic
15 32.4   4  78.7  66 4.08 2.200 19.47  1  1    4    1            Fiat 128
16 14.7   8 440.0 230 3.23 5.345 17.42  0  0    3    4   Chrysler Imperial
17 10.4   8 460.0 215 3.00 5.424 17.82  0  0    3    4 Lincoln Continental
18 10.4   8 472.0 205 2.93 5.250 17.98  0  0    3    4  Cadillac Fleetwood
19 15.2   8 275.8 180 3.07 3.780 18.00  0  0    3    3         Merc 450SLC
20 17.3   8 275.8 180 3.07 3.730 17.60  0  0    3    3          Merc 450SL
21 16.4   8 275.8 180 3.07 4.070 17.40  0  0    3    3          Merc 450SE
22 17.8   6 167.6 123 3.92 3.440 18.90  1  0    4    4           Merc 280C
23 19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4            Merc 280
24 22.8   4 140.8  95 3.92 3.150 22.90  1  0    4    2            Merc 230
25 24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2           Merc 240D
26 14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4          Duster 360
27 18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1             Valiant
28 18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2   Hornet Sportabout
29 21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1      Hornet 4 Drive
30 22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1          Datsun 710
31 21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4       Mazda RX4 Wag
32 21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4           Mazda RX4
   mpg cyl  disp  hp drat    wt  qsec vs am gear carb             model
1 21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4         Mazda RX4
2 21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4     Mazda RX4 Wag
3 22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1        Datsun 710
4 21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1    Hornet 4 Drive
5 18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2 Hornet Sportabout
6 18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1           Valiant
7 14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4        Duster 360
8 24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2         Merc 240D
9 22.8   4 140.8  95 3.92 3.150 22.90  1  0    4    2          Merc 230
    mpg cyl  disp  hp drat    wt  qsec vs am gear carb            model
1  21.5   4 120.1  97 3.70 2.465 20.01  1  0    3    1    Toyota Corona
2  15.5   8 318.0 150 2.76 3.520 16.87  0  0    3    2 Dodge Challenger
3  15.2   8 304.0 150 3.15 3.435 17.30  0  0    3    2      AMC Javelin
4  13.3   8 350.0 245 3.73 3.840 15.41  0  0    3    4       Camaro Z28
5  19.2   8 400.0 175 3.08 3.845 17.05  0  0    3    2 Pontiac Firebird
6  27.3   4  79.0  66 4.08 1.935 18.90  1  1    4    1        Fiat X1-9
7  26.0   4 120.3  91 4.43 2.140 16.70  0  1    5    2    Porsche 914-2
8  30.4   4  95.1 113 3.77 1.513 16.90  1  1    5    2     Lotus Europa
9  15.8   8 351.0 264 4.22 3.170 14.50  0  1    5    4   Ford Pantera L
10 19.7   6 145.0 175 3.62 2.770 15.50  0  1    5    6     Ferrari Dino
11 15.0   8 301.0 335 3.54 3.570 14.60  0  1    5    8    Maserati Bora
12 21.4   4 121.0 109 4.11 2.780 18.60  1  1    4    2       Volvo 142E
    mpg cyl  disp  hp drat    wt  qsec vs am gear carb               model
1  21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4           Mazda RX4
2  21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4       Mazda RX4 Wag
3  22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1          Datsun 710
4  21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1      Hornet 4 Drive
5  18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2   Hornet Sportabout
6  18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1             Valiant
7  14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4          Duster 360
8  24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2           Merc 240D
9  22.8   4 140.8  95 3.92 3.150 22.90  1  0    4    2            Merc 230
10 19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4            Merc 280
11 17.8   6 167.6 123 3.92 3.440 18.90  1  0    4    4           Merc 280C
12 16.4   8 275.8 180 3.07 4.070 17.40  0  0    3    3          Merc 450SE
13 17.3   8 275.8 180 3.07 3.730 17.60  0  0    3    3          Merc 450SL
14 15.2   8 275.8 180 3.07 3.780 18.00  0  0    3    3         Merc 450SLC
15 10.4   8 472.0 205 2.93 5.250 17.98  0  0    3    4  Cadillac Fleetwood
16 10.4   8 460.0 215 3.00 5.424 17.82  0  0    3    4 Lincoln Continental
17 14.7   8 440.0 230 3.23 5.345 17.42  0  0    3    4   Chrysler Imperial
18 32.4   4  78.7  66 4.08 2.200 19.47  1  1    4    1            Fiat 128
19 30.4   4  75.7  52 4.93 1.615 18.52  1  1    4    2         Honda Civic
20 33.9   4  71.1  65 4.22 1.835 19.90  1  1    4    1      Toyota Corolla
21 19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4            Merc 280
22 17.8   6 167.6 123 3.92 3.440 18.90  1  0    4    4           Merc 280C
23 16.4   8 275.8 180 3.07 4.070 17.40  0  0    3    3          Merc 450SE
24 17.3   8 275.8 180 3.07 3.730 17.60  0  0    3    3          Merc 450SL
25 15.2   8 275.8 180 3.07 3.780 18.00  0  0    3    3         Merc 450SLC
26 10.4   8 472.0 205 2.93 5.250 17.98  0  0    3    4  Cadillac Fleetwood
27 10.4   8 460.0 215 3.00 5.424 17.82  0  0    3    4 Lincoln Continental
28 14.7   8 440.0 230 3.23 5.345 17.42  0  0    3    4   Chrysler Imperial
29 32.4   4  78.7  66 4.08 2.200 19.47  1  1    4    1            Fiat 128
30 30.4   4  75.7  52 4.93 1.615 18.52  1  1    4    2         Honda Civic
31 33.9   4  71.1  65 4.22 1.835 19.90  1  1    4    1      Toyota Corolla
32 21.5   4 120.1  97 3.70 2.465 20.01  1  0    3    1       Toyota Corona
33 15.5   8 318.0 150 2.76 3.520 16.87  0  0    3    2    Dodge Challenger
34 15.2   8 304.0 150 3.15 3.435 17.30  0  0    3    2         AMC Javelin
35 13.3   8 350.0 245 3.73 3.840 15.41  0  0    3    4          Camaro Z28
36 19.2   8 400.0 175 3.08 3.845 17.05  0  0    3    2    Pontiac Firebird
37 27.3   4  79.0  66 4.08 1.935 18.90  1  1    4    1           Fiat X1-9
38 26.0   4 120.3  91 4.43 2.140 16.70  0  1    5    2       Porsche 914-2
39 30.4   4  95.1 113 3.77 1.513 16.90  1  1    5    2        Lotus Europa
40 15.8   8 351.0 264 4.22 3.170 14.50  0  1    5    4      Ford Pantera L
41 19.7   6 145.0 175 3.62 2.770 15.50  0  1    5    6        Ferrari Dino
42 15.0   8 301.0 335 3.54 3.570 14.60  0  1    5    8       Maserati Bora
43 21.4   4 121.0 109 4.11 2.780 18.60  1  1    4    2          Volvo 142E
TRUE
  column
1      1
2      2
3      3
4      4
5      5
   column
1      10
2       9
3       8
4       7
5       6
6       5
7       4
8       3
9       2
10      1
  column
1      6
2      7
3      8
4      9
5     10
   column
1       1
2       2
3       3
4       4
5       5
6       6
7       7
8       8
9       9
10     10
11     10
12      1
13      2
14      3
15      4
16      5
17      5

dplyr documentation built on July 4, 2019, 5:08 p.m.