adjust_abundance {tidybulk} | R Documentation

## Adjust transcript abundance for unwanted variation

### Description

adjust_abundance() takes as input a 'tbl' formatted as | <SAMPLE> | <TRANSCRIPT> | <COUNT> | <...> | and returns a 'tbl' with an edditional adjusted abundance column. This method uses scaled counts if present.

### Usage

    adjust_abundance(
      .data,
      .formula,
      .sample = NULL,
      .transcript = NULL,
      .abundance = NULL,
      log_transform = TRUE,
      action = "add",
      ...
    )

    ## S4 method for signature 'spec_tbl_df'
    adjust_abundance(
      .data,
      .formula,
      .sample = NULL,
      .transcript = NULL,
      .abundance = NULL,
      log_transform = TRUE,
      action = "add",
      ...
    )

    ## S4 method for signature 'tbl_df'
    adjust_abundance(
      .data,
      .formula,
      .sample = NULL,
      .transcript = NULL,
      .abundance = NULL,
      log_transform = TRUE,
      action = "add",
      ...
    )

    ## S4 method for signature 'tidybulk'
    adjust_abundance(
      .data,
      .formula,
      .sample = NULL,
      .transcript = NULL,
      .abundance = NULL,
      log_transform = TRUE,
      action = "add",
      ...
    )

    ## S4 method for signature 'SummarizedExperiment'
    adjust_abundance(
      .data,
      .formula,
      .sample = NULL,
      .transcript = NULL,
      .abundance = NULL,
      log_transform = TRUE,
      action = "add",
      ...
    )

    ## S4 method for signature 'RangedSummarizedExperiment'
    adjust_abundance(
      .data,
      .formula,
      .sample = NULL,
      .transcript = NULL,
      .abundance = NULL,
      log_transform = TRUE,
      action = "add",
      ...
    )

### Arguments

`.data` | A 'tbl' formatted as | <SAMPLE> | <TRANSCRIPT> | <COUNT> | <...> |
`.formula` | A formula with no response variable, representing the desired linear model where the first covariate is the factor of interest and the second covariate is the unwanted variation (of the kind ~ factor_of_interest + batch)
`.sample` | The name of the sample column
`.transcript` | The name of the transcript/gene column
`.abundance` | The name of the transcript/gene abundance column
`log_transform` | A boolean, whether the value should be log-transformed (e.g., TRUE for RNA sequencing data)
`action` | A character string. Whether to join the new information to the input tbl (add), or just get the non-redundant tbl with the new information (get).
`...` | Further parameters passed to the function sva::ComBat

### Details

'r lifecycle::badge("maturing")'

This function adjusts the abundance for (known) unwanted variation. At the moment just an unwanted covariate is allowed at a time using Combat (DOI: 10.1093/bioinformatics/bts034)

Underlying method: sva::ComBat(data, batch = my_batch, mod = design, prior.plots = FALSE, ...)

### Value

A 'tbl' with additional columns for the adjusted counts as '<COUNT COLUMN>_adjusted'

A 'tbl' with additional columns for the adjusted counts as '<COUNT COLUMN>_adjusted'

A 'tbl' with additional columns for the adjusted counts as '<COUNT COLUMN>_adjusted'

A 'tbl' with additional columns for the adjusted counts as '<COUNT COLUMN>_adjusted'

A 'SummarizedExperiment' object

A 'SummarizedExperiment' object

### Examples

    cm = tidybulk::se_mini
    cm$batch = 0
    cm$batch[colnames(cm) %in% c("SRR1740035", "SRR1740043")] = 1

    res =
     cm %>%
     tidybulk(sample, transcript, count) %>%
     identify_abundant() %>%
    	adjust_abundance(	~ condition + batch	)

[Package tidybulk version 1.4.0 Index]