getFeatureRanges {eisaR} | R Documentation

## Generate a GRangesList object with feature ranges

### Description

Generate a GRangesList object with genomic ranges for (any combination of) spliced transcripts, unspliced transcripts and introns.

### Usage

    getFeatureRanges(
      gtf,
      featureType = c("spliced", "intron"),
      intronType = "separate",
      flankLength = 90L,
      joinOverlappingIntrons = FALSE,
      verbose = TRUE
    )

### Arguments

`gtf` | Path to gtf file.
`featureType` | Character vector indicating the type(s) of features to extract, any subset of `c("spliced", "intron", "unspliced")`.
`intronType` | Character vector indicating how to define the introns (only used if "intron" is part of `featureType`). Has to be either "separate" (introns are defined for each transcript separately) or "collapse" (transcripts of the same gene are first collapsed before introns are defined as any non-exonic part of the gene locus).
`flankLength` | Integer scalar indicating the length of the flanking sequence added to each side of each extracted intron (only used if "intron" is included in `featureType`).
`joinOverlappingIntrons` | Logical scalar indicating whether two introns that overlap (after adding the flanking sequences) should be joined into one feature.
`verbose` | Logical scalar, whether to print out progress messages.

### Value

Returns a `GRangesList` object where each element represents one extracted feature. The metadata of this object contains two `data.frame`s mapping corresponding identifiers between the different feature types, as well as a list of all features for each type.

### Author(s)

Charlotte Soneson

### Examples

      ## Get feature ranges
      grl <- getFeatureRanges(
        gtf = system.file("extdata/small_example.gtf", package = "eisaR"),
        featureType = c("spliced", "intron"),
        intronType = "separate",
        flankLength = 5L,
        joinOverlappingIntrons = FALSE,
        verbose = TRUE
      )

      ## GRangesList
      grl

      ## Corresponding transcript/gene IDs
      S4Vectors::metadata(grl)$corrtx
      S4Vectors::metadata(grl)$corrgene

      ## List of features of different types
      S4Vectors::metadata(grl)$featurelist

      ## Get feature sequences
      if (requireNamespace("BSgenome", quietly = TRUE) &&
          requireNamespace("GenomicFeatures", quietly = TRUE)) {
        library(BSgenome)
        genome <- Biostrings::readDNAStringSet(
          system.file("extdata/small_example_genome.fa", package = "eisaR"))
        seqs <- GenomicFeatures::extractTranscriptSeqs(x = genome,
                                                       transcripts = grl)
        seqs
      }

[Package eisaR version 1.4.0 Index]