fit_to_signatures_bootstrapped: Fit mutational signatures to a mutation matrix with...

Description Usage Arguments Details Value See Also Examples

View source: R/fit_to_signatures_bootstrapped.R

Description

Bootstrapping the signature refitting shows how stable the refit is, when small changes are made to the mutation matrix. You can be more confident in the refitting results, when the differences in signature contributions are small between bootstrap iterations.

Usage

1
2
3
4
5
6
7
8
fit_to_signatures_bootstrapped(
  mut_matrix,
  signatures,
  n_boots = 1000,
  max_delta = 0.05,
  method = c("strict", "regular", "regular_10+"),
  verbose = TRUE
)

Arguments

mut_matrix

mutation count matrix (dimensions: x mutation types X n samples)

signatures

Signature matrix (dimensions: x mutation types X n signatures)

n_boots

Number of bootstrap iterations.

max_delta

The maximum difference in original vs reconstructed cosine similarity between two iterations. Only used with method strict.

method

The refitting method to be used. Possible values: * 'strict' Uses fit_to_signatures_strict; * 'regular' Uses fit_to_signatures; * 'regular_10+' Uses fit_to_signatures, but removes signatures with less than 10 variants.;

verbose

Boolean. If TRUE, the function will show how far along it is.

Details

The mutation matrix is resampled 'n_boots' times. Resampling is done per column (sample) with replacement. The row weights are used as probabilities. On each resampled matrix the 'fit_to_signatures()' or 'fit_to_signatures_strict()' function is applied. In the end a matrix is returned with the contributions for each bootstrap iteration. Each row is a single bootstrap iteration from a single sample. The method you choose determines how strict the signature refitting is. The 'regular' and "regular_10+ methods often suffer from a lot of overfitting, however this is less of an issue when you refit on an limited number of signatures. The 'strict' method suffers less from overfitting, but can suffer from more signature misattribution. The best method will depend on your data and research question.

Value

A matrix showing the signature contributions across all the bootstrap iterations.

See Also

mut_matrix, fit_to_signatures_strict, fit_to_signatures_bootstrapped

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
## See the 'mut_matrix()' example for how we obtained the mutation matrix:
mut_mat <- readRDS(system.file("states/mut_mat_data.rds",
  package = "MutationalPatterns"
))

## Get pre-defined signatures
signatures <- get_known_signatures()

## Fit to signatures with bootstrapping
contri_boots <- fit_to_signatures_bootstrapped(mut_mat,
  signatures,
  n_boots = 10,
  max_delta = 0.05
)

## Use the regular refit method
contri_boots <- fit_to_signatures_bootstrapped(mut_mat,
  signatures,
  n_boots = 10,
  max_delta = 0.05,
  method = "regular"
)

MutationalPatterns documentation built on Nov. 14, 2020, 2:03 a.m.