Contents

Abstract

autonomics is created to make cross-platform omics analysis intuitive and enjoyable. It contains import + preprocess + analyze + visualize one-liners for RNAseq, MS proteomics, SOMAscan and Metabolon platforms and a generic importer for data from any rectangular omics file. With a focus on not only automation but also customization, these importers have a flexible formula/ block/contrastdefs interface which allows to define any statistical formula, fit any general linear model, quantify any contrast, and use random effects or precision weights if required, building on top of the powerful limma platform for statistical analysis. It also offers exquisite support for analyzing complex designs such as the innovative contrastogram visualization to unravel and summarize the differential expression structure in complex designs. By autonomating repetitive tasks, generifying common steps, and intuifying complex designs, it makes cross-platform omics data analysis a fun experience. Try it and enjoy :-).

1 read + preprocess + analyze + visualize

Autonomics offers import + preprocess + analyze + visualize one-liners for RNAseq, MS proteomics, SOMAscan and Metabolon platforms, as well a generic importer for data from any rectangular omics file. We will discuss each of these in more detail in the following sections, but all of them follow the following general steps:

1.1 RNAseq

Autonomics provides ready-to-use importers for both count as well as BAM files, which read / preprocess / analyze RNAseq data. Specific to RNAseq is counting reads using Rsubread::featureCounts (for read_rna_bams)), normalizing for library composition (cpm) or gene length (tpm), estimating voom precision weights, and using these in linear modeling. Let’s illustrate both of these on example datasets:

read_rnaseq_counts

Billing et al. (2019) studied the differentiation of embryonic (E00) into mesenchymal stem cells (E00.8, E01, E02, E05, E15, E30), with similar properties as bone-marrow mesenchymal stem cells (M00). Importing the RNAseq counts:

require(autonomics, quietly = TRUE)
## 
## Attaching package: 'autonomics'
## The following object is masked from 'package:stats':
## 
##     biplot
object <-  read_rnaseq_counts(file = download_data('billing19.rnacounts.txt'), 
                              pca = TRUE, fit = 'limma', plot = TRUE)
##  Read ~/.cache/autonomics/3453226216e595_billing19.rnacounts.txt
##      Infer subgroup from sample_ids
##      Infer subgroup from sample_ids
##      Preprocess
##          Keep 22855/56269 features: count >= 10 (~0 + subgroup)
##          pseudocount 0.5
##          cpm:    tmm scale libsizes
##              cpm
##          voom: ~0 + subgroup
##          log2
## Warning: The `<scale>` argument of `guides()` cannot be `FALSE`. Use "none" instead as
## of ggplot2 3.3.4.
## ℹ The deprecated feature was likely used in the autonomics package.
##   Please report the issue at
##   <https://bitbucket.org/graumannlabtools/autonomics>.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
##      Add PCA
##      lmFit(~0 + subgroup, weights = assays(object)$weights)
##              contrast ndown  nup
##          1: E00.8-E00     8   36
##          2: E01-E00.8     0    0
##          3:   E02-E01     0   31
##          4:   E05-E02   124   18
##          5:   E15-E05  3179 4165
##          6:   E30-E15  2104 1198
##          7:   M00-E30  1579 1523