Provides a tidy data framework for managing glycoproteomics and
glycomics experimental data. The core features are the GlycomicSE and
GlycoproteomicSE classes, which extend SummarizedExperiment with
validated glycomics and glycoproteomics schemas. They integrate
expression matrices, molecular annotations (proteins, peptides, glycan
compositions, and more), and sample metadata (groups, batches, and
clinical variables). The package enforces data consistency, validates
column types according to experiment types, and provides dplyr-style
data manipulation functions (filter, mutate, select, arrange, slice,
join) for seamless data wrangling.
We recommend installing the meta-package glycoverse, which includes this package and other core glycoverse packages.
If you don’t want to install all glycoverse packages, you can only install glyexp.
You can install the latest release of glyexp from r-universe (recommended):
# install.packages("pak")
pak::repo_add(glycoverse = "https://glycoverse.r-universe.dev")
pak::pkg_install("glyexp")Or from GitHub:
pak::pkg_install("glycoverse/glyexp@*release")Or install the development version (NOT recommended):
pak::pkg_install("glycoverse/glyexp")Note: Tips and troubleshooting for the meta-package glycoverse are also applicable here: Installation of glycoverse.
GlycomicSE and GlycoproteomicSE provide consistent interfaces for
glycomics and glycoproteomics data. Other packages in the glycoverse
ecosystem can operate on these containers directly. Use them to pass
validated data between analysis steps. Let other packages do the heavy
lifting.
library(glyexp)
# Inspect a bundled experiment
real_experiment
#>
#> ── GlycoproteomicSE ────────────────────────────────────────────────────────────
#> ℹ Abundance assay: 12 samples, 4262 variables
#> ℹ Glycan type: N
#> ℹ Row data fields: peptide <chr>, peptide_site <int>, protein <chr>, protein_site <int>, gene <chr>, glycan_composition <comp>, glycan_structure <struct>
#> ℹ Column data fields: group <fct>
#> ℹ Metadata fields: exp_type <chr>, glycan_type <chr>, quant_method <chr>assay(real_experiment)[1:5, 1:3]
#> C1 C2 C3
#> P08185-176-Hex(5)HexNAc(4)NeuAc(2) NA NA 10655.62
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-1 414080036 609889761 78954431.49
#> P04196-344-Hex(5)HexNAc(4) 581723113 604842244 167889901.32
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-2 3299649335 2856490652 957651065.86
#> P10909-291-Hex(6)HexNAc(5)-1 30427048 34294394 6390129.81head(colData(real_experiment))
#> DataFrame with 6 rows and 1 column
#> group
#> <factor>
#> C1 C
#> C2 C
#> C3 C
#> H1 H
#> H2 H
#> H3 Hhead(rowData(real_experiment))
#> DataFrame with 6 rows and 7 columns
#> peptide peptide_site protein
#> <character> <integer> <character>
#> P08185-176-Hex(5)HexNAc(4)NeuAc(2) NKTQGK 1 P08185
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-1 HSHNNNSSDLHPHK 5 P04196
#> P04196-344-Hex(5)HexNAc(4) HSHNNNSSDLHPHK 5 P04196
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-2 HSHNNNSSDLHPHK 5 P04196
#> P10909-291-Hex(6)HexNAc(5)-1 HNSTGCLR 2 P10909
#> P04196-344-Hex(5)HexNAc(4)NeuAc(2) HSHNNNSSDLHPHK 5 P04196
#> protein_site gene
#> <integer> <character>
#> P08185-176-Hex(5)HexNAc(4)NeuAc(2) 176 SERPINA6
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-1 344 HRG
#> P04196-344-Hex(5)HexNAc(4) 344 HRG
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-2 344 HRG
#> P10909-291-Hex(6)HexNAc(5)-1 291 CLU
#> P04196-344-Hex(5)HexNAc(4)NeuAc(2) 344 HRG
#> glycan_composition
#> <glyrepr_composition>
#> P08185-176-Hex(5)HexNAc(4)NeuAc(2) Hex(5)HexNAc(4)NeuAc..
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-1 Hex(5)HexNAc(4)NeuAc..
#> P04196-344-Hex(5)HexNAc(4) Hex(5)HexNAc(4)
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-2 Hex(5)HexNAc(4)NeuAc..
#> P10909-291-Hex(6)HexNAc(5)-1 Hex(6)HexNAc(5)
#> P04196-344-Hex(5)HexNAc(4)NeuAc(2) Hex(5)HexNAc(4)NeuAc..
#> glycan_structure
#> <glyrepr_structure>
#> P08185-176-Hex(5)HexNAc(4)NeuAc(2) NeuAc(??-?)Hex(??-?)..
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-1 NeuAc(??-?)Hex(??-?)..
#> P04196-344-Hex(5)HexNAc(4) Hex(??-?)HexNAc(??-?..
#> P04196-344-Hex(5)HexNAc(4)NeuAc(1)-2 NeuAc(??-?)Hex(??-?)..
#> P10909-291-Hex(6)HexNAc(5)-1 Hex(??-?)HexNAc(??-?..
#> P04196-344-Hex(5)HexNAc(4)NeuAc(2) NeuAc(??-?)Hex(??-?)..# Filter samples
real_experiment |>
filter_col(group == "H")
#>
#> ── GlycoproteomicSE ────────────────────────────────────────────────────────────
#> ℹ Abundance assay: 3 samples, 4262 variables
#> ℹ Glycan type: N
#> ℹ Row data fields: peptide <chr>, peptide_site <int>, protein <chr>, protein_site <int>, gene <chr>, glycan_composition <comp>, glycan_structure <struct>
#> ℹ Column data fields: group <fct>
#> ℹ Metadata fields: exp_type <chr>, glycan_type <chr>, quant_method <chr>