Hits-class-leftovers {IRanges} | R Documentation

## Examples of basic manipulation of Hits objects

### Description

IMPORTANT NOTE - 4/29/2014: This man page is being refactored. Most of the things that used to be documented here have been moved to the man page for Hits objects located in the S4Vectors package.

### Details

The `as.data.frame` method coerces a `Hits` object to a two column `data.frame` with one row for each hit, where the value in the first column is the index of an element in the query and the value in the second column is the index of an element in the subject.

### Coercion

In the code snippets below, `x` is a `Hits` object.

  `as(x, "DataFrame")`: Creates a `DataFrame` by combining the result of `as.matrix(x)` with `mcols(from)`.

  `as.data.frame(x)`: Attempts to coerce the result of `as(from, "DataFrame")` to a `data.frame`.

  `as.list(x)`: Coerces `x` to a list of integers, grouping the the right node hits for each left node.

  `as(x, "List")`: Analogous to `as.list(x)`.

  `as(x, "Grouping")`: Returns roughly the same object as `as(x, "List")`, except it is a ManyToManyGrouping, i.e., it knows the number of right nodes.

### See Also

The Hits class defined and documented in the S4Vectors package.

### Examples

    query <- IRanges(c(1, 4, 9), c(5, 7, 10))
    subject <- IRanges(c(2, 2, 10), c(2, 3, 12))
    hits <- findOverlaps(query, subject)

    as.matrix(hits)
    as.data.frame(hits)

    as.table(hits) # hits per query
    as.table(t(hits)) # hits per subject

    ## Turn a Hits object into an IntegerList object with one list element
    ## per element in the original query.
    as(hits, "IntegerList")
    as(hits, "List")  # same as as(hits, "IntegerList")

    ## Turn a Hits object into a PartitioningByEnd object that describes
    ## the grouping of hits by query.
    as(hits, "PartitioningByEnd")
    as(hits, "Partitioning")  # same as as(hits, "PartitioningByEnd")

    ## ---------------------------------------------------------------------
    ## remapHits()
    ## ---------------------------------------------------------------------

    hits2 <- remapHits(hits,
                       Rnodes.remapping=factor(c("e", "e", "d"), letters[1:5]))
    hits2

    hits3 <- remapHits(hits,
                       Rnodes.remapping=c(5, 5, 4), new.nRnode=5)
    hits3
    stopifnot(identical(hits2, hits3))

[Package IRanges version 2.22.2 Index]