knitr::opts_chunk$set( collapse = TRUE, comment = "#>" )
library(revolver) library(evoverse.datasets) require(tidyverse)
Cross et al. The evolutionary landscape of colorectal tumorigenesis. Nat Ecol Evol. 2018 2(10). PMID 30177804.
n=19
adenomas (unmatched);data(CROSS_CRC_ADENOCARCINOMA_NATECOEVO_2018, packages = 'evoverse.datasets') print(CROSS_CRC_ADENOCARCINOMA_NATECOEVO_2018) # Constructor CROSS_CRC_ADENOCARCINOMA_REVOLVER = revolver_cohort( CROSS_CRC_ADENOCARCINOMA_NATECOEVO_2018, MIN.CLUSTER.SIZE = 0, annotation = "Colorectal adenocarcinomas (Cross et al, PMID 30177804)")
We can check the cohort, and flag put drivers that are not recurrent.
# Diagnostic revolver_check_cohort(CROSS_CRC_ADENOCARCINOMA_REVOLVER) # Driver events that occur in 1 patient non_recurrent = Stats_drivers(CROSS_CRC_ADENOCARCINOMA_REVOLVER) %>% filter(N_tot == 1) %>% pull(variantID) # Remove drivers CROSS_CRC_ADENOCARCINOMA_REVOLVER = remove_drivers(CROSS_CRC_ADENOCARCINOMA_REVOLVER, non_recurrent)
revolver
uses the mtree package to implement mutation trees from binary data.
# Compute the trees CROSS_CRC_ADENOCARCINOMA_REVOLVER = compute_mutation_trees(CROSS_CRC_ADENOCARCINOMA_REVOLVER)
Function revolver_fit
implements the 2-steps REVOLVER algorithm to fit the data.
We use the following parameters:
initial.solution = NA
, to sample random initial solutions for every run of EM;n = 3
, to repeat the fit 3 times, and retain the one with lower median goodness-of-fit penalty.parallel = FALSE
, to run serially the fits;CROSS_CRC_ADENOCARCINOMA_REVOLVER = revolver_fit( CROSS_CRC_ADENOCARCINOMA_REVOLVER, parallel = F, n = 3, initial.solution = NA)
CROSS_CRC_ADENOCARCINOMA_REVOLVER = revolver_cluster( CROSS_CRC_ADENOCARCINOMA_REVOLVER, split.method = 'cutreeHybrid', min.group.size = 3)
plot_clusters(CROSS_CRC_ADENOCARCINOMA_REVOLVER, cutoff_trajectories = 1, cutoff_drivers = 0)
plot_drivers_graph(CROSS_CRC_ADENOCARCINOMA_REVOLVER)
plot_dendrogram(CROSS_CRC_ADENOCARCINOMA_REVOLVER)
plot_DET_index(CROSS_CRC_ADENOCARCINOMA_REVOLVER)
plot(CROSS_CRC_ADENOCARCINOMA_REVOLVER)
plot_drivers_clonality(CROSS_CRC_ADENOCARCINOMA_REVOLVER)
plot_drivers_occurrence(CROSS_CRC_ADENOCARCINOMA_REVOLVER)
plot_patient_trees(CROSS_CRC_ADENOCARCINOMA_REVOLVER, CROSS_CRC_ADENOCARCINOMA_REVOLVER$patients[3])
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.