ct.ROC {gCrisprTools} | R Documentation

## Generate a Receiver-Operator Characteristic (ROC) Curve from a CRISPR screen

### Description

Given a set of targets of interest, this function generates a ROC curve and associated statistics from the results of a CRISPR screen. Specifically, it orders the elements targeted in the screen by the specified statistic, and then plots the cumulative proportion of positive hits on the y-axis. The corresponding vectors and Area Under the Curve (AUC) statistic are returned as a list.

Note that ranking statistics in CRISPR screens are (usually) permutation-based, and so some granularity is expected. This function does a little extra work to ensure that hits are counted as soon as the requisite value of the ranking statistic is reached regardless of where the gene is located within the block of equally-significant genes. Functionally, this means that the drawn curve is somewhat anticonservative in cases where the gene ranks are not well differentiated.

### Usage

    ct.ROC(
      summaryDF,
      target.list,
      stat = c("enrich.p", "deplete.p", "enrich.fc", "deplete.fc", "enrich.rho",
        "deplete.rho"),
      condense = TRUE,
      plot.it = TRUE
    )

### Arguments

`summaryDF` | A dataframe summarizing the results of the screen, returned by the function `ct.generateResults`.
`target.list` | A character vector containing the names of the targets to be tested. Only targets contained in the `geneID` column of the provided `summaryDF` are considered.
`stat` | The statistic to use when ordering the genes. Must be one of `"enrich.p"`, `"deplete.p"`, `"enrich.fc"`, `"deplete.fc"`, `"enrich.rho"`, or `"deplete.rho"`.
`condense` | Logical indicating whether the returned x and y coordinates should be "condensed", returning only the points at which the detected proportion of `target.list` changes. If set to `FALSE`, the returned `x` and `y` vectors will explicitly indicate the curve value at every position (useful for performing curve arithmetic downstream).
`plot.it` | Logical value indicating whether to plot the curves.

### Value

A list containing the the x and y coordinates of the curve, and the AUC statistic (invisibly).

### Author(s)

Russell Bainer

### Examples

    data('resultsDF')
    data('essential.genes') #Note that this is an artificial example.
    roc <- ct.ROC(resultsDF, essential.genes, 'deplete.p')
    str(roc)

[Package gCrisprTools version 1.18.0 Index]