Often you will resample a dataset hundreds or thousands of times. Storing the complete resample each time would be very inefficient so this class instead stores a "pointer" to the original dataset, and a vector of row indexes. To turn this into a regular data frame, call as.data.frame, to extract the indices, use as.integer.

resample(data, idx)

Arguments

data

The data frame

idx

A vector of integer indexes indicating which rows have been selected. These values should lie between 1 and nrow(data) but they are not checked by this function in the interests of performance.

See also

Other resampling techniques: bootstrap(), resample_bootstrap(), resample_partition()

Examples

resample(mtcars, 1:10)
#> <resample [10 x 11]> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
b <- resample_bootstrap(mtcars) b
#> <resample [32 x 11]> 20, 12, 21, 19, 22, 2, 16, 21, 1, 6, ...
#> [1] 20 12 21 19 22 2 16 21 1 6 16 3 15 18 14 27 10 23 18 28 11 30 29 3 15 #> [26] 2 22 9 6 16 2 21
#> mpg cyl disp hp drat wt qsec vs am gear carb #> Toyota Corolla 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1 #> Merc 450SE 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3 3 #> Toyota Corona 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1 #> Honda Civic 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2 #> Dodge Challenger 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2 #> Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4 #> Lincoln Continental 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4 #> Toyota Corona.1 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1 #> Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4 #> Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1 #> Lincoln Continental.1 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4 #> Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1 #> Cadillac Fleetwood 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4 #> Fiat 128 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1 #> Merc 450SLC 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3 3 #> Porsche 914-2 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5 2 #> Merc 280 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4 #> AMC Javelin 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2 #> Fiat 128.1 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1 #> Lotus Europa 30.4 4 95.1 113 3.77 1.513 16.90 1 1 5 2 #> Merc 280C 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4 #> Ferrari Dino 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5 6 #> Ford Pantera L 15.8 8 351.0 264 4.22 3.170 14.50 0 1 5 4 #> Datsun 710.1 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1 #> Cadillac Fleetwood.1 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4 #> Mazda RX4 Wag.1 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4 #> Dodge Challenger.1 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2 #> Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2 #> Valiant.1 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1 #> Lincoln Continental.2 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4 #> Mazda RX4 Wag.2 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4 #> Toyota Corona.2 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1
# Many modelling functions will do the coercion for you, so you can # use a resample object directly in the data argument lm(mpg ~ wt, data = b)
#> #> Call: #> lm(formula = mpg ~ wt, data = b) #> #> Coefficients: #> (Intercept) wt #> 37.143 -5.329 #>