Skip to contents

glycoverse logo

Glyco-Omics Data Analysis Made Easy

A Tidyverse-style ecosystem for glycobiologists to turn raw MS data into biological insights.

Overview

glycoverse is a comprehensive R ecosystem designed for glycomics and glycoproteomics data analysis. It provides a unified pipeline that covers the entire analytical workflow, from data import and cleaning to statistical analysis and visualization. It also provides a dedicated infrastructure for glycan structure analysis.

Quick Start

library(glycoverse)

# Import results from Byonic and GlycoQuant
exp <- read_byonic_pglycoquant("result.csv", sample_info = "sample_info.csv")

# Preprocess
clean_exp <- auto_clean(exp)

# Derived trait analysis
trait_exp <- derive_traits(clean_exp)

# Statistical analysis
dea_res <- gly_anova(trait_exp)

# Use pipeline for a more concise workflow
dea_res <- exp |> 
  auto_clean() |> 
  derive_traits() |> 
  gly_anova()

Packages

πŸ”¬ Omics Data Analysis

Ecosystem units focusing on experimental data structures, automated cleaning, robust statistical calculation and interactive downstream plotting.

glyexp logo
glyexp
Data management &
experiment objects
glyread logo
glyread
Mass spectrometry
result importer
glyclean logo
glyclean
Rule-based preprocessing
glystats logo
glystats
Statistical analysis
glyvis logo
glyvis
Data visualization

🧬 Glycan Structure Analysis

Packages for representing, parsing, matching, deriving and drawing glycan structures and traits.

glyrepr logo
glyrepr
Glycan structure
representation
glyparse logo
glyparse
IUPAC, WURCS,
GlycoCT parser
glymotif logo
glymotif
Motif matching
and analysis
glydet logo
glydet
Derived trait
calculation
glydraw logo
glydraw
Glycan structure
visualization

🧰 Optional Workflow Extensions

Additional packages for reference data, annotation, pathway context, enrichment and full pipeline assembly.

glydb logo
glydb
Curated glycan
database
glyanno logo
glyanno
Composition and
structure annotation
glyenzy logo
glyenzy
Biosynthesis pathway
analysis
glyfun logo
glyfun
Functional enrichment
analysis
glysmith logo
glysmith
Full analytical
pipeline

glycoverse Meta-Package

This repository contains the glycoverse meta-package, which provides convenient tools for managing the entire glycoverse ecosystem:

  • One-command installation: Install all core packages at once
  • Package updates: Update all glycoverse packages with a single function
  • Situation report: Check the status of all installed glycoverse packages

Installation

# install.packages("pak")
pak::repo_add(glycoverse = "https://glycoverse.r-universe.dev")
pak::pkg_install("glycoverse")

This installs the meta-package and all core packages: glyexp, glyread, glyclean, glystats, glyvis, glyrepr, glyparse, glymotif, glydet, and glydraw.

Troubleshooting: β€œFailed to download” or β€œ403” errors usually indicate network issues with r-universe rate limiting. Try switching network environments or installing from GitHub.

Install Individual Packages

pak::repo_add(glycoverse = "https://glycoverse.r-universe.dev")
pak::pkg_install("glymotif")  # Also installs dependencies: glyrepr, glyparse, glyexp

Install from GitHub

Click to expand detailed GitHub installation instructions

Prerequisite: To install packages from GitHub, you’ll need the proper compilation tools installed on your system. This means RTools for Windows and Xcode Command Line Tools for macOS. Without them, you’ll likely see a β€œCould not find tools necessary to compile a package” error. If you’re unsure about the process, a quick search for β€œinstall R package from GitHub” will provide helpful context on why these tools are necessary.

Installing from GitHub is a little tricky. Package dependencies within glycoverse are resolved assuming all packages are on r-universe (some on CRAN or Bioconductor). It means that when running the following code:

# Do NOT run:
pak::pkg_install("glycoverse/glyxxx@*release")  # common practice to install a GitHub package

Installing glyxxx from GitHub in this way does not bypass R-universe entirely, as its dependencies are still hosted there. If you are experiencing network issues with R-universe, switching to the GitHub version of glyxxx will not resolve the problem.

To truely install a glycoverse package from GitHub (along with all its dependencies), you have to install them one by one following the dependency tree:

pak::pkg_install("glyrepr")  # from CRAN
pak::pkg_install("glyparse")  # from CRAN
pak::pkg_install("glycoverse/glyexp@*release")
pak::pkg_install("glycoverse/glydraw@*release")
pak::pkg_install("glycoverse/glyread@*release")
pak::pkg_install("glycoverse/glyclean@*release")
pak::pkg_install("glycoverse/glystats@*release")
pak::pkg_install("glycoverse/glymotif@*release")
pak::pkg_install("glycoverse/glyvis@*release")
pak::pkg_install("glycoverse/glydet@*release")

# The meta-package
pak::pkg_install("glycoverse/glycoverse@*release")

Note: Check the DESCRIPTION file of each package to find its dependencies.

Troubleshooting: Encountering an β€œHTTP error 403”? This usually means your IP has been rate-limited by GitHub. To resolve this, you need to configure a Personal Access Token (PAT).

  1. Sign up for a GitHub account.
  2. Install Git on your local machine.
  3. Generate a PAT via your GitHub settings.
  4. Configure the PAT locally (e.g., using the gitcreds R package).

For a step-by-step guide, search for β€œHow to set up GitHub PAT for R.”

Install optional packages

glydb, glyanno, glyenzy, glyfun, and glysmith are installed separately:

pak::pkg_install("glydb")
pak::pkg_install("glyanno")
pak::pkg_install("glyfun")

Getting Started

Using the meta-package

Load all core packages:

library(glycoverse)
#> ── Attaching core glycoverse packages ───────────────── glycoverse 0.3.1.9000 ──
#> βœ” glyclean 0.14.1          βœ” glyparse 0.6.0      
#> βœ” glydet   0.11.0          βœ” glyread  0.11.0     
#> βœ” glydraw  0.4.0           βœ” glyrepr  0.12.0     
#> βœ” glyexp   0.14.1          βœ” glystats 0.10.0.9000
#> βœ” glymotif 0.14.1          βœ” glyvis   0.6.0      
#> ── Conflicts ───────────────────────────────────────── glycoverse_conflicts() ──
#> βœ– glyclean::aggregate() masks stats::aggregate()
#> β„Ή Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors

Check your installation:

Learning Path

For out-of-box analysis: Start with glyexp β†’ glyread β†’ glysmith

For systematic learning:

  1. Read the case studies:
  2. Follow the recommended learning order:

You might also find glydb, glyanno, glyenzy, and glyfun useful for specific tasks.

Updating Packages

# Update all glycoverse packages
glycoverse_update()

# List all dependencies
glycoverse_deps(recursive = TRUE)

Important Notes

  • glycoverse v0.2.5+ uses r-universe for releases. Update the meta-package for better package management.
  • Updating the meta-package itself does not automatically update other glycoverse packages. Use glycoverse_update() for that.