lengthOf {ensembldb} | R Documentation

## Calculating lengths of features

### Description

These methods allow to calculate the lengths of features (transcripts, genes, CDS, 3' or 5' UTRs) defined in an `EnsDb` object or database.

### Usage

    ## S4 method for signature 'EnsDb'
    lengthOf(x, of="gene", filter = AnnotationFilterList())

### Arguments

(In alphabetic order)

`filter` | A filter describing which results to retrieve from the database. Can be a single object extending `AnnotationFilter`, an `AnnotationFilterList` object combining several such objects or a `formula` representing a filter expression (see examples below or `AnnotationFilter` for more details).
`of` | for `lengthOf`: whether the length of genes or transcripts should be retrieved from the database.
`x` | For `lengthOf`: either an `EnsDb` or a `GRangesList` object. For all other methods an `EnsDb` instance.

### Value

For `lengthOf`: see method description above.

### Methods and Functions

lengthOf

  Retrieve the length of genes or transcripts from the database. The length is the sum of the lengths of all exons of a transcript or a gene. In the latter case the exons are first reduced so that the length corresponds to the part of the genomic sequence covered by the exons.

  Note: in addition to this method, also the `transcriptLengths` function in the `GenomicFeatures` package can be used.

### Author(s)

Johannes Rainer

### See Also

`exonsBy` `transcripts` `transcriptLengths`

### Examples

    library(EnsDb.Hsapiens.v86)
    edb <- EnsDb.Hsapiens.v86

    #####    lengthOf
    ##
    ## length of a specific gene.
    lengthOf(edb, filter = GeneIdFilter("ENSG00000000003"))

    ## length of a transcript
    lengthOf(edb, of = "tx", filter = TxIdFilter("ENST00000494424"))

    ## Average length of all protein coding genes encoded on chromosomes X
    mean(lengthOf(edb, of = "gene",
                  filter = ~ gene_biotype == "protein_coding" &
                      seq_name == "X"))

    ## Average length of all snoRNAs
    mean(lengthOf(edb, of = "gene",
                  filter = ~ gene_biotype == "snoRNA" &
                      seq_name == "X"))

    ##### transcriptLengths
    ##
    ## Calculate the length of transcripts encoded on chromosome Y, including
    ## length of the CDS, 5' and 3' UTR.
    len <- transcriptLengths(edb, with.cds_len = TRUE, with.utr5_len = TRUE,
                             with.utr3_len = TRUE, filter = SeqNameFilter("Y"))
    head(len)

[Package ensembldb version 2.12.1 Index]