knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)

Tool Applications

ACE (Analysis of CRISPR Essentiality) was designed to test for differential essentiality between sets of samples from a CRISPR knockout screen. Please see the ACE paper for a detailed discussion of methods. [@Hutton2020]

Input Data

A minimum of two data files must be provided for ACE:

Other files necessary for analysis may include:

library(ACER)

Tool Applications

ACE (Analysis of CRISPR Essentiality) was designed to test for differential essentiality between sets of samples from a CRISPR knockout screen. Please see the ACE paper for a detailed discussion of methods. [@Hutton2020]

Input Data

A minimum of two data files must be provided for ACE: countFile: a single text file with unique sgRNA identifiers in the first column and gene names in the second column. Subsequent columns must contain either depleted read counts (if a master library sequencing is provided), or alternating initial and depleted read counts. negCtrlFile: a text file of the gene names to use as negative controls.

Other files necessary for analysis may include: masterFiles: a vector of names of files containing sequenced master libraries. sampleMasterInfoFile: Text file containing a column of master library file names, and a column with the corresponding sample name derived from that master library (the same sample name used as a header in the countFile). sampleInfoFile: Required for differential essentiality prediction, this file contains one column listing sample names and a second column containing sample annotations to use in test partitioning (for instance, 'KRAS_WT' vs. 'KRAS_Mut'). guideCovarFile: File used to estimate guide efficiency (optional).

head(fread(system.file('extdata','countData.csv', package='ACER')))

Basic Analysis

The basic workflow for using ACE is three commands. First, all input data files are loaded into an R object (DataObj) and checked for problems. Next, this raw data is preprocessed according to the desired analysis to create a collection of parameters, forming a ModelObj. Both the raw data and the estimated parameters are then provided to the main function, optimizeModelParameters, which uses expectation maximization to infer gene essentiality, guide efficiency, and sample effects.

newDataObj <- DataObj$new(masterFiles = system.file('extdata','masterLibraryCounts.csv', package='ACER'),
                          countFile = system.file('extdata','countData.csv', package='ACER'),
                          negCtrlFile = system.file('extdata','negCtrlGenes.txt', package='ACER'), 
                          sampleInfoFile=system.file('extdata','sampleAnnotations.txt', package='ACER'),
                          hasInitSeq = T)
newModelObj <- ModelObj$new(user_DataObj = newDataObj,
                            use_neg_ctrl=T,
                            test_samples='test',
                            use_master_library = T)
newResultsObj <- optimizeModelParameters(user_DataObj = newDataObj,
                                         user_ModelObj = newModelObj)
writeResObj(newResultsObj)

Differential Essentiality

To obtain estimates of differential essentiality estimated by sample subtype, as opposed to global essentiality across all samples, the file sampleInfoFile must be provided with sample annotation information to the original DataObj. Essentiality will be compared between samples with and without the annotation provided in the ModelObj's test_samples parameter.



CshlSiepelLab/ACE documentation built on Sept. 10, 2021, 11:21 p.m.