preprocess {idr2d} | R Documentation

## Prepares Data for IDR Analysis

### Description

This method removes invalid values, establishes the correct ranking, and breaks ties prior to IDR analysis.

`Inf` and `-Inf` are replaced by `max(x) * max_factor` and `min(x) / max_factor`, respectively.

`NA` values in `x` are replaced by `mean(x)`.

All values in `x` are transformed using the transformation specified in `value_transformation`.

Lastly, a small amount of noise is added to `x` to break ties. The magnitude of the noise is controlled by `jitter_factor`.

### Usage

    preprocess(
      x,
      value_transformation = c("identity", "additive_inverse", "multiplicative_inverse",
        "log", "log_additive_inverse"),
      max_factor = 1.5,
      jitter_factor = 1e-04
    )

### Arguments

`x` | numeric vector of values
`value_transformation` | the values in `x` have to be transformed in a way such that when ordered in descending order, more significant interactions end up on top of the list. If the values in `x` are p-values, `"log_additive_inverse"` is recommended. The following transformations are supported:
`"identity"` | no transformation is performed on `x`
`"additive_inverse"` | `x. = -x`
`"multiplicative_inverse"` | `x. = 1 / x`
`"log"` | `x. = log(x)`. Note: zeros are replaced by `.Machine$double.xmin`
`"log_additive_inverse"` | `x. = -log(x)`, recommended if `x` are p-values. Note: zeros are replaced by `.Machine$double.xmin`
either `"ascending"` (more significant interactions have lower value in `value` column) or `"descending"` (more significant interactions have higher value in `value` column)
`max_factor` | numeric; controls the replacement values for `Inf` and `-Inf`. `Inf` are replaced by `max(x) * max_factor` and `-Inf` are replaced by `min(x) / max_factor`.
`jitter_factor` | numeric; controls the magnitude of the noise that is added to `x`. This is done to break ties in `x`. Set `jitter_factor = NULL` for no jitter.

### Value

numeric vector; transformed and stripped values of `x`, ready for IDR analysis

### Examples

    rep1_df <- idr2d:::chiapet$rep1_df
    rep1_df$fdr <- preprocess(rep1_df$fdr, "log_additive_inverse")

[Package idr2d version 1.2.2 Index]