Several utility functions to work with adducts.
GenFormAdducts()
MetFragAdducts()
as.adduct(x, format = "generic", isPositive = NULL, charge = NULL, err = TRUE)
calculateIonFormula(formula, adduct)
calculateNeutralFormula(formula, adduct)
The object that should be converted. Should be a character
string, a numeric
MetFrag
adduct identifier
(adduct_mode
column obtained with MetFragAdducts
) or an
adduct
object (in which case no conversion occurs).
A character
that specifies the source format.
"generic"
is an internally used generic format that supports full
textual conversion. Examples: "[M+H]+"
, "[2M+H]+"
,
"[M+3H]3+"
.
"sirius"
Is the format used by SIRIUS
. It is similar to
generic
but does not allow multiple charges/molecules. See the
SIRIUS manual for more details.
"genform"
and "metfrag"
support fixed types of adducts
which can be obtained with the GenFormAdducts
and
MetFragAdducts
functions, respectively.
"openms"
is the format used by the MetaboliteAdductDecharger
tool.
"cliquems"
is the format used by cliqueMS.
A logical that specifies whether the adduct should be
positive. Should only be set when format="metfrag"
and x
is a
numeric
identifier.
The final charge. Only needs to be set when format="openms"
.
If TRUE
then an error will be thrown if conversion fails,
otherwise returns without data.
A character
vector with formulae to convert.
An adduct
object (or something that can be converted to it with as.adduct
).
Examples: "[M-H]-"
, "[M+Na]+"
.
GenFormAdducts
returns a table with information on adducts
supported by GenForm
.
MetFragAdducts
returns a table with information on adducts
supported by MetFrag
.
as.adduct
Converts an object in to an adduct
object.
calculateIonFormula
Converts one or more neutral formulae to
adduct ions.
calculateNeutralFormula
Converts one or more adduct ions to
neutral formulae.
as.adduct("[M+H]+")
as.adduct("[M+H2]2+")
as.adduct("[2M+H]+")
as.adduct("[M-H]-")
as.adduct("+H", format = "genform")
as.adduct(1, isPositive = TRUE, format = "metfrag") # MetFrag adduct ID 1 --> returns [M+H]+
calculateIonFormula("C2H4O", "[M+H]+") # C2H5O
calculateNeutralFormula("C2H5O", "[M+H]+") # C2H4O