An open API service indexing awesome lists of open source software.

https://github.com/sneumann/rdisop

This is the git repository matching the Bioconductor package Rdisop: Decomposition of Isotopic Patterns
https://github.com/sneumann/rdisop

mass-spectrometry metabolomics r

Last synced: 6 months ago
JSON representation

This is the git repository matching the Bioconductor package Rdisop: Decomposition of Isotopic Patterns

Awesome Lists containing this project

README

          

---
output: github_document
---

```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
library(Rdisop)
```

# Rdisop

[![R-CMD-check](https://github.com/janlisec/Rdisop/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/janlisec/Rdisop/actions/workflows/R-CMD-check.yaml)
[![DOI](https://img.shields.io/badge/doi-10.1093/bioinformatics/btm631-yellow.svg)](https://doi.org/10.1093/bioinformatics/btm631)

In high resolution mass spectrometry (HR-MS), the measured masses can be
decomposed into potential element combinations (chemical sum formulas).
Where additional mass/intensity information of respective isotopic peaks is
available, decomposition can take this information into account to better
rank the potential candidate sum formulas. To compare measured mass/intensity
information with the theoretical distribution of candidate sum formulas, the
latter needs to be calculated.
This package implements fast algorithms to address both tasks, the
calculation of isotopic distributions for arbitrary sum formulas (assuming a
HR-MS resolution of roughly 30,000), and the ranked list of sum formulas
fitting an observed peak or isotopic peak set.

## Installation

You can install the development version of **Rdisop** using:

``` r
# install.packages("devtools")
devtools::install_github("sneumann/Rdisop")
```

## Example

The user can use built in sets of chemical elements or define such sets
specifically and get informations on a specified sum formula, *i.e.* the
isotopic distribution which would be observed in HR-MS.

```{r exmpl2}
ele <- initializeElements(c("C","H","N","O","Mg"))
chlorophyll <- getMolecule("C55H72MgN4O5H", elements = ele)
getIsotope(chlorophyll, 1:4)
```

For individual masses, potential molecules can be calculated.

```{r exmpl3}
decomposeMass(mass = 46.042, ppm = 20, maxisotopes = 4)
```

This decomposition can also be performed for measurements containing several
isotopes.

```{r exmpl5}
# glutamic acid (C5H9NO4)
mol <- decomposeIsotopes(masses = c(147.053, 148.056), intensities = c(93, 5.8))
data.frame(getFormula(mol), getScore(mol), getValid(mol))
```