isoformSwitchAnalysisPart1 {IsoformSwitchAnalyzeR}R Documentation

Isoform Switch Analysis Workflow Part 1: Extract Isoform Switches and Their Sequences

Description

This high-level function takes either a CuffSet object or a pre-existing switchAnalyzeRlist as input. If the input is a CuffSet object a switchAnalyzeRlist is created or else the function uses the provieded switchAnalyzeRlist. Then isoform switches are predicted (unless switchTestMethod='none') and ORF are predicted if not already annotated. Lastly the function extracts the nucleotide sequence and the ORF AA sequences of the isoforms involved in isoform switches. Thes sequences are both saved to external files and added to the switchAnalyzeRlist to enable external and internal sequence analysis respectively.

This function is meant to be used as part 1 of the isoform switch analysis workflow, which can be followed by the second step via isoformSwitchAnalysisPart2.

Usage

isoformSwitchAnalysisPart1(
    switchAnalyzeRlist,
    alpha = 0.05,
    dIFcutoff = 0.1,
    switchTestMethod='DEXSeq',
    orfMethod = "longest",
    genomeObject = NULL,
    cds = NULL,
    pathToOutput = getwd(),
    outputSequences = TRUE,
    prepareForWebServers = FALSE,
    overwriteORF=FALSE,
    quiet=FALSE
)

Arguments

switchAnalyzeRlist

A switchAnalyzeRlist.

alpha

The cutoff which the (calibrated) fdr correct p-values must be smaller than for calling significant switches. Defualit is 0.05.

dIFcutoff

The cutoff which the changes in (absolute) isoform usage must be larger than before an isoform is considered switching. This cutoff can remove cases where isoforms with (very) low dIF values are deemed significant and thereby included in the downstream analysis. This cutoff is analogous to having a cutoff on log2 fold change in a normal differential expression analysis of genes to ensure the genes have a certain effect size. Default is 0.1 (10%).

switchTestMethod

A sting indicating which statistical method should be used for testing differential isoform usage. The following options are avilable:

  • 'DEXSeq' : Uses DEXSeq to perform the statiscal test. See isoformSwitchTestDEXSeq. Default

  • 'DRIMSeq' : Uses the DRIMSeq package to perform the statiscal test. See isoformSwitchTestDRIMSeq.

  • 'none' : No statistical test is performed. Should only be used if a test have already been performed and should not be overwritten (e.g when importing cuffdiff data).

orfMethod

A string indicating which of the 4 ORF identification methods should be used. The methods are:

  • longest : Identifies the longest ORF in the transcript. This approach is similar to what the CPAT tool uses in it's analysis of coding potential

  • longestAnnotated : Identifies the longest ORF downstream of an annoated translation start site (supplied via the cds argument)

  • mostUpstreamAnnoated : Identifies the ORF downstream of the most unstream overlapping annoated translation start site (supplied via the cds argument)

Default is longest.

genomeObject

A BSgenome object (for example Hsapiens for Homo sapiens).

pathToOutput

A path to the folder in which the plots should be made. Default is working directory ( getwd() ).

cds

A CDSSet object containing annoated coding regions, see ?CDSSet and ?getCDS for more information. Only necessary if \'orfType\' arguments is \'longestAnnotated\' or \'mostUpstreamAnnoated\'.

overwriteORF

A logical indicating whether to overwrite the ORF analysis already stored in the supplied switchAnalyzeRlist. Default is FALSE.

outputSequences

A logical indicating whether transcript nucleotide and amino acid sequences should be outputted to pathToOutput. Default is TRUE.

prepareForWebServers

A logical indicating whether the amino acid fasta files saved (if outputSequences=TRUE) should be prepared for the online web-servises currently supported (as they have some limitations on what can submitted). See details. Default is FALSE (for backward compatability).

quiet

A logical indicating whether to avoid printing progress messages (incl. progress bar). Default is FALSE

Details

This function performs the first part of a Isoform Analysis Workflow by

  1. Remove non-expressed isoforms and single-isoform genes (see preFilter)

  2. Predict isoform switches unless switchTestMethod is set to 'none'.

  3. If no ORFs are annotated the isoforms are analyzed for open reading frames (ORFs, see analyzeORF)

  4. The isoform nucleotide and ORF amino acid sequences are extracted and saved to fasta files as well as added to the switchAnalyzeRlist enabling external sequence analysis with CPAT, Pfam and SignalP (see vignette for more info).

if prepareForWebServers=TRUE both the "filterAALength" and "alsoSplitFastaFile" will be enabled in the extractSequence function.

Value

This function have two outputs. It returns a switchAnalyzeRlist object where information about the isoform switch test, ORF prediction and nt and aa sequences have been added. Secondly (if outputSequences is TRUE) the nucleotide and amino acid sequence of transcripts involved in switches are also save as fasta files enabling external sequence analysis.

Author(s)

Kristoffer Vitting-Seerup

References

Vitting-Seerup et al. The Landscape of Isoform Switches in Human Cancers. Mol. Cancer Res. (2017).

See Also

preFilter
isoformSwitchTestDEXSeq
isoformSwitchTestDRIMSeq
analyzeORF
extractSequence

Examples

data("exampleSwitchList")
exampleSwitchList

exampleSwitchList <- isoformSwitchAnalysisPart1(
    switchAnalyzeRlist=exampleSwitchList,
    dIFcutoff = 0.4,        # Set high for short runtime in example data
    outputSequences = FALSE # keeps the function from outputting the fasta files from this example
)

exampleSwitchList

[Package IsoformSwitchAnalyzeR version 1.6.0 Index]