entropy {ORFik} | R Documentation

## Percentage of maximum entropy

### Description

Calculates entropy of the 'reads' coverage over each 'grl' group. The entropy value per group is a real number in the interval (0:1), where 0 indicates no variance in reads over group. For example c(0,0,0,0) has 0 entropy, since no reads overlap.

### Usage

    entropy(grl, reads, weight = 1L, is.sorted = FALSE, overlapGrl = NULL)

### Arguments

`grl` | a `GRangesList` object can be either transcripts, 5' utrs, cds', 3' utrs or ORFs as a special case (uORFs, potential new cds' etc). If regions are not spliced you can send a `GRanges` object.
`reads` | a `GAlignments`, `GRanges` or `GRangesList` object, usually of RiboSeq, RnaSeq, CageSeq, etc.
`weight` | a vector (default: 1L, if 1L it is identical to countOverlaps()), if single number (!= 1), it applies for all, if more than one must be equal size of 'reads'. else it must be the string name of a defined meta column in subject "reads", that gives number of times a read was found. GRanges("chr1", 1, "+", score = 5), would mean "score" column tells that this alignment region was found 5 times.
`is.sorted` | logical (FALSE), is grl sorted. That is + strand groups in increasing ranges (1,2,3), and - strand groups in decreasing ranges (3,2,1)
`overlapGrl` | an integer, (default: NULL), if defined must be countOverlaps(grl, RFP), added for speed if you already have it

### Value

A numeric vector containing one entropy value per element in 'grl'

### See Also

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

### Examples

    # a toy example with ribo-seq p-shifted reads
    ORF <- GRanges("1", ranges = IRanges(start = c(1, 12, 22),
                                         end = c(10, 20, 32)),
                   strand = "+",
                   names = rep("tx1_1", 3))
    names(ORF) <- rep("tx1", 3)
    grl <- GRangesList(tx1_1 = ORF)
    reads <- GRanges("1", IRanges(c(25, 35), c(25, 35)), "+")
    # grl must have same names as cds + _1 etc, so that they can be matched.
    entropy(grl, reads)
    # or on cds
    cdsORF <- GRanges("1", IRanges(35, 44), "+", names = "tx1")
    names(cdsORF) <- "tx1"
    cds <-  GRangesList(tx1 = cdsORF)
    entropy(cds, reads)

[Package ORFik version 1.14.7 Index]