SomaLogic's SOMAscan™ assay platform allows the analysis of the relative abundance of over 1300 proteins directly from biological matrices such as blood plasma and serum. The data resulting from the assay is provided in a proprietary text-based format called ADAT.
The readAdat
function imports data from ADAT
files. The resultant data variable is an object of class WideSomaLogicData
, which consists of a data.table
, from the package of the same name, for the sample and intensity data, and three attributes for the sequence data, metadata, and checksum.
readat contains sample datasets probed with both SomaLogic's 1129 (1.1k) and 1310 (1.3k) suites of SOMAmer reagents. To demonstrate the features of the package, we exhibit the "1.3k" dataset. This dataset represents plasma samples from 20 US adults aged between 35 and 75 years old, split into age groups ("old", 50 or older; "young", under 50).
To import the data, type:
library(readat) zipFile <- system.file( "extdata", "PLASMA.1.3k.20151030.adat.zip", package = "readat" ) adatFile <- unzip(zipFile, exdir = tempfile("readat")) plasma1.3k <- readAdat(adatFile)
Intensity readings for eleven of the SOMAmer reagents did not pass SomaLogic's quality control checks, and are excluded on import by default.
sequenceData <- getSequenceData(plasma1.3k) nrow(sequenceData) # 1310 less 11
To include samples and sequences that did not pass QC,
plasma1.3kIncFailures <- readAdat(adatFile, keepOnlyPasses = FALSE) nrow(getSequenceData(plasma1.3kIncFailures))
The default format is not appropriate for all data analytical needs. When using ggplot2 or dplyr, for example, it is more convenient to have one intensity per row rather than one sample per row. The package contains a melt
method to transform WideSomaLogicData
into LongSomaLogicData
. This conversion requires access to the melt
generic function in the reshape2 package.
library(reshape2) longPlasma1.3k <- melt(plasma1.3k) str(longPlasma1.3k)
For Bioconductor workflows, the package also includes a function to convert WideSomaLogicData
objects into Biobase ExpressionSet
s, SummarizedExperiment SummarizedExperiment
s, and MSnbase MSnSet
s.
as.ExpressionSet(plasma1.3k) as.SummarizedExperiment(plasma1.3k) if(requireNamespace("MSnbase")) { as.MSnSet(plasma1.3k) }
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.