Extract Glycan Motifs from Glycan Structures

Identify, count, and match recurring substructures in glycan structures. Supports concrete and generic monosaccharide matching, several structural alignment modes, node-to-node mappings, and batch analysis using subgraph isomorphism. Includes curated motif annotations derived from the 'GlycoMotif' resource < https://glycomotif.glyomics.org/>. Integrates with 'glyrepr' and 'glyparse' for structural glycomics workflows.


glymotif

Lifecycle:experimental R-universeversion R-CMD-check Codecov testcoverage

Provides comprehensive tools for glycan motif analysis and detection in glycobioinformatics research. The package enables users to identify, count, and match glycan motifs (recurring substructures) within complex glycan structures using advanced subgraph isomorphism algorithms. It includes a curated database of known motifs from the GlycoMotif database, supports both concrete and generic monosaccharide matching, and offers flexible alignment options (core, terminal, or anywhere). Key functionalities include motif presence detection, occurrence counting, detailed node-to-node mapping, and batch analysis of multiple glycans against multiple motifs.

Installation

Once glymotif is available on CRAN, you can install the latest release from CRAN:

pak::pkg_install("glymotif")

Or from r-universe:

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

Or install the latest GitHub release:

pak::pkg_install("glycoverse/glymotif@*release")

Or install the development version from GitHub:

pak::pkg_install("glycoverse/glymotif")

Documentation

  • 🚀 Get started: Here
  • 🔧 Motif matching rules: Here
  • 📚 Reference: Here

Role in glycoverse

glymotif provides possibilities for one important job in glyco-bioinformatics: to detect motifs in glycans. The package is designed to be used directly by users for structural analysis, as well as to provide backend support for other packages in the glycoverse ecosystem.

Example

library(glymotif)
library(glyparse)

Say we have a glycan, …

(glycan <- parse_iupac_condensed("Gal(b1-3)GlcNAc(b1-3)Gal(b1-3)GalNAc(a1-"))
#> <glycan_structure[1]>
#> [1] Gal(b1-3)GlcNAc(b1-3)Gal(b1-3)GalNAc(a1-
#> # Unique structures: 1

… and we want to check if it has the O-Glycan core 1 motif.

have_motif(glycan, "Gal(b1-3)GalNAc(a1-", alignment = "core")
#> [1] TRUE

Or use the motif name directly.

have_motif(glycan, "O-Glycan core 1")
#> [1] TRUE

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("glymotif")

1.0.0 by Bin Fu, 7 days ago


https://glycoverse.github.io/glymotif/, https://github.com/glycoverse/glymotif


Report a bug at https://github.com/glycoverse/glymotif/issues


Browse source code at https://github.com/cran/glymotif


Authors: Bin Fu [aut, cre, cph]


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports cli, glyrepr, glyparse, glydraw, igraph, purrr, rlang, stringr, checkmate, tibble, vctrs, lifecycle, Rcpp

Suggests testthat, patrick, knitr, rmarkdown, dplyr

Linking to BH, Rcpp


See at CRAN