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.

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

mtcars$model <- rownames(mtcars) first <- mtcars[1:20, ] second <- mtcars[10:32, ] intersect(first, second)
#> 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
union(first, second)
#> 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
setdiff(first, second)
#> 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
setdiff(second, first)
#> 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
union_all(first, second)
#> 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
setequal(mtcars, mtcars[32:1, ])
#> TRUE