Skip to contents

This function generates bootstrap samples from the input metadata. It samples with replacement within each group defined in the metadata, and optionally adjusts for paired groups.

Usage

bootstrapS(B, meta.info, group.name)

Arguments

B

Integer. The number of bootstrap samples to generate.

meta.info

Data frame. Metadata containing sample information, where each row corresponds to a sample.

group.name

Character. The name of the column in meta.info that defines the grouping variable for the samples.

Value

A matrix of dimension B x n, where n is the number of samples. Each row corresponds to a bootstrap sample, and each entry is a resampled row name from the metadata.

Details

The function works by resampling the row names of the metadata for each group separately.

Examples

# Example usage:
set.seed(123)
meta.info <- data.frame(
    group = rep(c("A", "B"), each = 5),
    row.names = paste0("Sample", 1:10)
)
bootstrapS(
    B = 10, meta.info = meta.info, group.name = "group"
)
#>       [,1]      [,2]      [,3]      [,4]      [,5]      [,6]       [,7]      
#>  [1,] "Sample3" "Sample3" "Sample2" "Sample2" "Sample3" "Sample10" "Sample9" 
#>  [2,] "Sample5" "Sample3" "Sample3" "Sample1" "Sample4" "Sample6"  "Sample6" 
#>  [3,] "Sample2" "Sample1" "Sample3" "Sample4" "Sample1" "Sample8"  "Sample10"
#>  [4,] "Sample1" "Sample1" "Sample2" "Sample3" "Sample4" "Sample10" "Sample10"
#>  [5,] "Sample5" "Sample5" "Sample4" "Sample5" "Sample2" "Sample6"  "Sample6" 
#>  [6,] "Sample1" "Sample2" "Sample4" "Sample4" "Sample3" "Sample6"  "Sample7" 
#>  [7,] "Sample5" "Sample5" "Sample3" "Sample1" "Sample4" "Sample6"  "Sample6" 
#>  [8,] "Sample3" "Sample5" "Sample3" "Sample2" "Sample5" "Sample10" "Sample8" 
#>  [9,] "Sample4" "Sample2" "Sample2" "Sample4" "Sample4" "Sample6"  "Sample8" 
#> [10,] "Sample5" "Sample2" "Sample3" "Sample2" "Sample5" "Sample10" "Sample8" 
#>       [,8]       [,9]      [,10]     
#>  [1,] "Sample6"  "Sample7" "Sample8" 
#>  [2,] "Sample10" "Sample8" "Sample7" 
#>  [3,] "Sample9"  "Sample7" "Sample10"
#>  [4,] "Sample8"  "Sample6" "Sample7" 
#>  [5,] "Sample8"  "Sample6" "Sample10"
#>  [6,] "Sample6"  "Sample7" "Sample9" 
#>  [7,] "Sample8"  "Sample9" "Sample6" 
#>  [8,] "Sample7"  "Sample7" "Sample7" 
#>  [9,] "Sample8"  "Sample6" "Sample8" 
#> [10,] "Sample9"  "Sample9" "Sample9"