Skip to content

📦 Automate Absolute Copy Number Calling using 'ABSOLUTE' package

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

ShixiangWang/DoAbsolute

Repository files navigation

DoAbsolute

lifecycle GitHub tag Hits

The goal of DoAbsolute is to automate ABSOLUTE calling for multiple samples in batch-processing.

Running this tool with 1 thread (default setting) is highly recommended, see note!!!!

ABSOLUTE is a famous software developed by Broad Institute, however, the RunAbsolute function is designed for computing one sample each time and set no default values. DoAbsolute helps user set default parameters according to ABSOLUTE documentation, provides a uniform interface to input data easily and runs RunAbsolute parallelly.

More detail about how to analyze ABSOLUTE results please see this link.

Installation

You can install the released version of DoAbsolute with:

# Option 1: GitHub
devtools::install_github("ShixiangWang/DoAbsolute")


# Option 2: r-universe
#
# Enable repository from shixiangwang
options(repos = c(
  shixiangwang = 'https://shixiangwang.r-universe.dev',
  CRAN = 'https://cloud.r-project.org'))
install.packages('DoAbsolute')

Install ABSOLUTE, the version provided by DoAbsolute is 1.0.6. You can find available versions at https://software.broadinstitute.org/cancer/cga/absolute_download. Users of DoAbsolute all should accept LICENCE from Firehorse.

install.packages("numDeriv")
path_to_file = system.file("extdata", "ABSOLUTE_1.0.6.tar.gz", package = "DoAbsolute", mustWork = T)
install.packages(path_to_file, repos = NULL, type="source")

NOTE: the builtin ABSOLUTE package is modified for fitting current R version and reducing some errors (this may be described in NEWS.md). If you want to use the raw package without modification, you can find it here. Remember the raw package (v1.0.6) is only working under R4.2.

Example

This is a basic example which shows you how to run DoAbsolute using example data from ABSOLUTE documentation.

Load package.

library(DoAbsolute)
example_path = system.file("extdata", package = "DoAbsolute", mustWork = T)


library(data.table)
# Load Test Data ----------------------------------------------------------

# segmentation file
seg_normal =  file.path(example_path, "SNP6_blood_normal.seg.txt")
seg_solid  =  file.path(example_path, "SNP6_solid_tumor.seg.txt")
seg_metastatic  = file.path(example_path, "SNP6_metastatic_tumor.seg.txt")
# MAF file
maf_solid  = file.path(example_path, "solid_tumor.maf.txt")
maf_metastatic  = file.path(example_path, "metastatic_tumor.maf.txt")

# read data
seg_normal = fread(seg_normal)
seg_solid = fread(seg_solid)
seg_metastatic = fread(seg_metastatic)
maf_solid = fread(maf_solid)
maf_metastatic = fread(maf_metastatic)

# merge data
Seg = Reduce(rbind, list(seg_normal, seg_solid, seg_metastatic))
Maf = Reduce(rbind, list(maf_solid, maf_metastatic))

Seg$Sample = substr(Seg$Sample, 1, 15)
Maf$Tumor_Sample_Barcode = substr(Maf$Tumor_Sample_Barcode, 1, 15)

# test function
DoAbsolute(Seg = Seg, Maf = Maf, platform = "SNP_6.0", copy.num.type = "total",
           results.dir = "test", keepAllResult = TRUE, verbose = TRUE)

NOTE!!!

Some inconsistent results have been reported in some issues (See discussion in #23 and #26), and it possibly relates to the parallel computation backend. So, at default, run this tool with only 1 thread is highly recommended!

Citation

Wang, Shixiang, et al. "The predictive power of tumor mutational burden 
    in lung cancer immunotherapy response is influenced by patients' sex." 
    International journal of cancer (2019).

Reference:

  • Carter, Scott L., et al. “Absolute quantification of somatic DNA alterations in human cancer.” Nature biotechnology 30.5 (2012): 413.

About

📦 Automate Absolute Copy Number Calling using 'ABSOLUTE' package

Topics

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Packages

No packages published

Languages