computeFeatures {ORFik} | R Documentation

## Get all main features in ORFik

### Description

If you want to get all the NGS and/or sequence features easily, you can use this function. Each feature have a link to an article describing its creation and idea behind it. Look at the functions in the feature family (in the "see also" section below) to see all of them. Example, if you want to know what the "te" column is, check out: ?translationalEff.
A short description of each feature is also shown here:
** NGS features ** If not stated otherwise stated, the feature apply to Ribo-seq.

- countRFP : raw counts of Ribo-seq

- fpkmRFP : FPKM

- fpkmRNA : FPKM of RNA-seq

- te : Translation efficiency Ribo-seq / RNA-seq FPKM

- floss : Fragment length similarity score

- entropyRFP : Positional entropy

- disengagementScores : downstream coverage from ORF

- RRS: Ribosome release score

- RSS: Ribosome staling score

- ORFScores: Periodicity score, does frame 0 have more reads

- ioScore: inside outside score: coverage ORF / coverage rest of transcript

- startCodonCoverage: Coverage over start codon + 2nt before start codon

- startRegionCoverage: Coverage over codon 2 & 3

- startRegionRelative: Peakness of TIS, startCodonCoverage / startRegionCoverage, 0-n

** Sequence features **

- kozak : Similarity to kozak sequence for organism score, 0-1

- gc : GC percentage, 0-1

- StartCodons : Start codon as a string, "ATG"

- StopCodons : stop codon as a string, "TAA"

- fractionLengths : ORF length compared to transcript, 0-1

** uORF features **

- distORFCDS : Distance from ORF stop site to CDS, -n:n

- inFrameCDS : Is ORF in frame with downstream CDS, T/F

- isOverlappingCds : Is ORF overlapping with downstream CDS, T/F

- rankInTx : ORF with most upstream start codon is 1, 1-n

### Usage

    computeFeatures(
      grl,
      RFP,
      RNA = NULL,
      Gtf,
      faFile = NULL,
      riboStart = 26,
      riboStop = 34,
      sequenceFeatures = TRUE,
      uorfFeatures = TRUE,
      grl.is.sorted = FALSE,
      weight.RFP = 1L,
      weight.RNA = 1L
    )

### Arguments

`grl` | a `GRangesList` object with usually ORFs, but can also be either leaders, cds', 3' utrs, etc. This is the regions you want to score.
`RFP` | RiboSeq reads as `GAlignments` , `GRanges` or `GRangesList` object
`RNA` | RnaSeq reads as `GAlignments` , `GRanges` or `GRangesList` object
`Gtf` | a TxDb object of a gtf file or path to gtf, gff .sqlite etc.
`faFile` | a path to fasta indexed genome, an open `FaFile`, a BSgenome, or path to ORFik `experiment` with valid genome.
`riboStart` | usually 26, the start of the floss interval, see ?floss
`riboStop` | usually 34, the end of the floss interval
`sequenceFeatures` | a logical, default TRUE, include all sequence features, that is: Kozak, fractionLengths, distORFCDS, isInFrame, isOverlapping and rankInTx. uorfFeatures = FALSE will remove the 4 last.
`uorfFeatures` | a logical, default TRUE, include all uORF sequence features, that is: distORFCDS, isInFrame, isOverlapping and rankInTx
`grl.is.sorted` | logical (F), a speed up if you know argument grl is sorted, set this to TRUE.
`weight.RFP` | a vector (default: 1L). Can also be character name of column in RFP. As in translationalEff(weight = "score") for: GRanges("chr1", 1, "+", score = 5), would mean score column tells that this alignment region was found 5 times.
`weight.RNA` | Same as weightRFP but for RNA weights. (default: 1L)

### Details

If you used CageSeq to reannotate your leaders, your txDB object must contain the reassigned leaders. Use [reassignTxDbByCage()] to get the txdb.
As a note the library is reduced to only reads overlapping 'tx', so the library size in fpkm calculation is done on this subset. This will help remove rRNA and other contaminants.
Also if you have only unique reads with a weight column, explaining the number of duplicated reads, set weights to make calculations correct. See `getWeights`

### Value

a data.table with scores, each column is one score type, name of columns are the names of the scores, i.g [floss()] or [fpkm()]

### See Also

Other features: `computeFeaturesCage()`, `countOverlapsW()`, `disengagementScore()`, `distToCds()`, `distToTSS()`, `entropy()`, `floss()`, `fpkm_calc()`, `fpkm()`, `fractionLength()`, `initiationScore()`, `insideOutsideORF()`, `isInFrame()`, `isOverlapping()`, `kozakSequenceScore()`, `orfScore()`, `rankOrder()`, `ribosomeReleaseScore()`, `ribosomeStallingScore()`, `startRegionCoverage()`, `startRegion()`, `stopRegion()`, `subsetCoverage()`, `translationalEff()`

### Examples

    # Here we make an example from scratch
    # Usually the ORFs are found in orfik, which makes names for you etc.
    gtf <- system.file("extdata/Danio_rerio_sample", "annotations.gtf",
     package = "ORFik") ## location of the gtf file
    suppressWarnings(txdb <-
                      GenomicFeatures::makeTxDbFromGFF(gtf, format = "gtf"))
    # use cds' as ORFs for this example
    ORFs <- GenomicFeatures::cdsBy(txdb, by = "tx", use.names = TRUE)
    ORFs <- makeORFNames(ORFs) # need ORF names
    # make Ribo-seq data,
    RFP <- unlistGrl(firstExonPerGroup(ORFs))
    suppressWarnings(computeFeatures(ORFs, RFP, Gtf = txdb))
    # For more details see vignettes.

[Package ORFik version 1.14.7 Index]