Overview
OmicFlow is a generalised data structure for fast and efficient loading of various sparse omics data. It can handle metataxonomics/metagenomics data in text or BIOM and extends to proteomics and other omics types. It also supports non-sparse data, but it's performance peaks in sparsity.
Installation
The latest stable version can be installed from CRAN.
install.packages('OmicFlow', dependencies = TRUE)
The development version is available on GitHub.
install.packages('pak') # if not yet installed pak::pkg_install('agusinac/OmicFlow@dev')
Usage
Initialize the metagenomics or any omics object from a file-path or pre-loaded object.
library("OmicFlow") metadata_file <- system.file("extdata", "metadata.tsv", package = "OmicFlow") counts_file <- system.file("extdata", "counts.tsv", package = "OmicFlow") features_file <- system.file("extdata", "features.tsv", package = "OmicFlow") tree_file <- system.file("extdata", "tree.newick", package = "OmicFlow") taxa <- metagenomics$new( metaData = metadata_file, countData = counts_file, featureData = features_file, treeData = tree_file ) taxa$feature_subset(Kingdom == "Bacteria") taxa$scale(method = "tss") # Access variables directly taxa$metaData taxa$countData taxa$featureData taxa$treeData # Change variables & enjoy the automatic sync taxa$featureData <- taxa$featureData[1:100, ] # Inspect what functions variables are available to the class taxa$
If you are new to OmicFlow, the best place to start is the Introduction to OmicFlow.
Docker
Example: Outputs a report.html file in current work directory
docker pull agusinac/autoflow:latest
docker run -it --rm -v \
"$(pwd)":/data \ # Mount the data in a temporary directory
-w /data \ # set working directory
-u $(id -u):$(id -g) \ # non-root user
agusinac/autoflow:latest \
autoflow \ # autoflow R script
-b /data/biom_with_taxonomy_hdf5.biom \
-m /data/metadata.tsvSupport
If you are having issues, please create a ticket
Acknowledgements
- Sticker logo created by studio floorescent | Floor Baas