| Title: | Paired Mass Distance Analysis for GC/LC-MS Based Non-Targeted Analysis and Reactomics Analysis |
|---|---|
| Description: | Paired mass distance (PMD) analysis proposed in Yu, Olkowicz and Pawliszyn (2018) <doi:10.1016/j.aca.2018.10.062> and PMD based reactomics analysis proposed in Yu and Petrick (2020) <doi:10.1038/s42004-020-00403-z> for gas/liquid chromatography–mass spectrometry (GC/LC-MS) based non-targeted analysis. PMD analysis including GlobalStd algorithm and structure/reaction directed analysis. GlobalStd algorithm could found independent peaks in m/z-retention time profiles based on retention time hierarchical cluster analysis and frequency analysis of paired mass distances within retention time groups. Structure directed analysis could be used to find potential relationship among those independent peaks in different retention time groups based on frequency of paired mass distances. Reactomics analysis could also be performed to build PMD network, assign sources and make biomarker reaction discovery. GUIs for PMD analysis is also included as 'shiny' applications. |
| Authors: | Miao YU [aut, cre] (ORCID: <https://orcid.org/0000-0002-2804-6014>) |
| Maintainer: | Miao YU <[email protected]> |
| License: | GPL-2 |
| Version: | 0.3.0 |
| Built: | 2026-05-22 18:56:50 UTC |
| Source: | https://github.com/yufree/pmd |
Perform correlation directed analysis for peaks list.
getcda(list, corcutoff = 0.9, rtcutoff = 10, accuracy = 4)getcda(list, corcutoff = 0.9, rtcutoff = 10, accuracy = 4)
list |
a list with mzrt profile |
corcutoff |
cutoff of the correlation coefficient, default NULL |
rtcutoff |
cutoff of the distances in retention time hierarchical clustering analysis, default 10 |
accuracy |
measured mass or mass to charge ratio in digits, default 4 |
list with correlation directed analysis results
data(spmeinvivo) cluster <- getpseudospectrum(spmeinvivo) cbp <- enviGCMS::getfilter(cluster,rowindex = cluster$stdmassindex2) cda <- getcda(cbp)data(spmeinvivo) cluster <- getpseudospectrum(spmeinvivo) cbp <- enviGCMS::getfilter(cluster,rowindex = cluster$stdmassindex2) cda <- getcda(cbp)
Get reaction chain for specific mass to charge ratio
getchain( list, diff, mass, digits = 2, accuracy = 4, rtcutoff = 10, corcutoff = 0.6, ppm = 25 )getchain( list, diff, mass, digits = 2, accuracy = 4, rtcutoff = 10, corcutoff = 0.6, ppm = 25 )
list |
a list with mzrt profile |
diff |
paired mass distance(s) of interests |
mass |
a specific mass for known compound or a vector of masses. You could also input formula for certain compounds |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
accuracy |
measured mass or mass to charge ratio in digits, default 4 |
rtcutoff |
cutoff of the distances in retention time hierarchical clustering analysis, default 10 |
corcutoff |
cutoff of the correlation coefficient, default 0.6 |
ppm |
all the peaks within this mass accuracy as seed mass or formula |
a list with mzrt profile and reaction chain dataframe
data(spmeinvivo) # check metabolites of C18H39NO pmd <- getchain(spmeinvivo,diff = c(2.02,14.02,15.99),mass = 286.3101) # remove the retention time for mass only data spmeinvivo$rt <- NULL pmd <- getchain(spmeinvivo,diff = c(2.02,14.02,15.99),mass = 286.3101)data(spmeinvivo) # check metabolites of C18H39NO pmd <- getchain(spmeinvivo,diff = c(2.02,14.02,15.99),mass = 286.3101) # remove the retention time for mass only data spmeinvivo$rt <- NULL pmd <- getchain(spmeinvivo,diff = c(2.02,14.02,15.99),mass = 286.3101)
Searches a feature network for directed paths whose successive mass differences
follow a user-specified PMD pattern. Unlike getchain, which
extracts the connected component reachable by any PMD in a set, this function
matches an ordered sequence of PMDs, with support for wildcards and
regex-style quantifiers. This unifies three use cases: fixed reaction
sequences (e.g. glycosylation followed by dehydration), homologous series
(repeated +CH2, PEG units, etc.), and paths with unknown intermediates
(wildcard steps).
getchainseq( list, pattern, mass = NULL, digits = 4, rtcutoff = 10, corcutoff = 0.6, ppm = 25, rtdir = "any", max_paths = 1e+05, allow_cycles = FALSE )getchainseq( list, pattern, mass = NULL, digits = 4, rtcutoff = 10, corcutoff = 0.6, ppm = 25, rtdir = "any", max_paths = 1e+05, allow_cycles = FALSE )
list |
a pmd-style list with |
pattern |
numeric vector, list of step specs, or DSL string
(see |
mass |
optional seed mass(es) or formula(s); only paths starting within
|
digits |
PMD matching precision, default 4 |
rtcutoff |
RT hierarchical-clustering cutoff for isomer grouping, default 10 |
corcutoff |
correlation cutoff between linked features, default 0.6;
pass |
ppm |
seed mass ppm tolerance, default 25 |
rtdir |
RT direction per edge: |
max_paths |
safety cap on returned paths, default 1e5 |
allow_cycles |
if |
Pattern grammar (any of):
Numeric vector: each element is one fixed-PMD step. Example:
c(162.0528, -18.0106) = glycosylation followed by one dehydration.
List of step specs: each step is a list with pmd (numeric, or
NA for wildcard), min (default 1), max
(default = min; Inf allowed).
Character string parsed by parse_pmd_pattern.
Signs of PMDs are significant: +162 = mass gain, -162 =
mass loss. This separates e.g. glycosylation from deglycosylation.
the input list with two new elements: sdacseq
(a data.table of matched paths) and pattern (the normalized pattern).
sdacseq columns: n1..nK (node indices; NA-padded for shorter
paths in variable-length matches), path_len, mz_1..mz_K,
rt_1..rt_K (if RT present), pmd_1..pmd_{K-1} (observed
PMDs), and cor_mean.
getchain, gethomolog,
parse_pmd_pattern
## Not run: data(spmeinvivo) # Fixed sequence: glycosylation then dehydration r1 <- getchainseq(spmeinvivo, c(162.0528, -18.0106)) # Homologous series: 2+ CH2 extensions r2 <- getchainseq(spmeinvivo, list(list(pmd = 14.0157, min = 2, max = Inf))) # DSL string with wildcards and quantifiers r3 <- getchainseq(spmeinvivo, "162.0528; -18.0106{0,3}; 14.0157+") # Anchor to a known compound r4 <- getchainseq(spmeinvivo, c(162.0528, -18.0106), mass = 286.3101) ## End(Not run)## Not run: data(spmeinvivo) # Fixed sequence: glycosylation then dehydration r1 <- getchainseq(spmeinvivo, c(162.0528, -18.0106)) # Homologous series: 2+ CH2 extensions r2 <- getchainseq(spmeinvivo, list(list(pmd = 14.0157, min = 2, max = Inf))) # DSL string with wildcards and quantifiers r3 <- getchainseq(spmeinvivo, "162.0528; -18.0106{0,3}; 14.0157+") # Anchor to a known compound r4 <- getchainseq(spmeinvivo, c(162.0528, -18.0106), mass = 286.3101) ## End(Not run)
Get Pseudo-Spectrum as peaks cluster based on correlation analysis.
getcorpseudospectrum(list, corcutoff = 0.9, rtcutoff = 10, accuracy = 4)getcorpseudospectrum(list, corcutoff = 0.9, rtcutoff = 10, accuracy = 4)
list |
a list with peaks intensity |
corcutoff |
cutoff of the correlation coefficient, default 0.9 |
rtcutoff |
cutoff of the distances in cluster, default 10 |
accuracy |
measured mass or mass to charge ratio in digits, default 4 |
list with Pseudo-Spectrum index
data(spmeinvivo) pseudo <- getcorpseudospectrum(spmeinvivo)data(spmeinvivo) pseudo <- getcorpseudospectrum(spmeinvivo)
Convenience wrapper around getchainseq for the common case of
detecting homologous series: chains of features linked by repeated
applications of a single PMD unit. Useful for finding alkyl chain series
(+CH2 = 14.0157), PEG series (+C2H4O = 44.0262), polymeric
artifacts, and similar patterns.
gethomolog(list, unit = 14.0157, min_len = 3L, max_len = Inf, ...)gethomolog(list, unit = 14.0157, min_len = 3L, max_len = Inf, ...)
list |
a pmd-style list with |
unit |
the repeating PMD, default |
min_len |
minimum number of nodes in the series, default 3 |
max_len |
maximum number of nodes, default |
... |
passed through to |
as getchainseq
## Not run: data(spmeinvivo) gethomolog(spmeinvivo, unit = 14.0157, min_len = 4) gethomolog(spmeinvivo, unit = 44.0262, min_len = 3) ## End(Not run)## Not run: data(spmeinvivo) gethomolog(spmeinvivo, unit = 14.0157, min_len = 4) gethomolog(spmeinvivo, unit = 44.0262, min_len = 3) ## End(Not run)
read in MSP file as list for ms/ms annotation
getms2pmd(file, digits = 2, icf = 10)getms2pmd(file, digits = 2, icf = 10)
file |
the path to your MSP file |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
icf |
intensity cutoff, default 10 percentage |
list a list with MSP information for MS/MS annotation
read in MSP file as list for EI-MS annotation
getmspmd(file, digits = 2, icf = 10)getmspmd(file, digits = 2, icf = 10)
file |
the path to your MSP file |
digits |
mass or mass to charge ratio accuracy for pmd, default 0 |
icf |
intensity cutoff, default 10 percentage |
list a list with MSP information for EI-MS annotation
Calculate Normalized Spectral Entropy (NSE)
getnse(x)getnse(x)
x |
Matrix or dataframe with samples in column and features in row |
Normalized Spectral Entropy (NSE) between 0 and 1
data(spmeinvivo) getnse(spmeinvivo$data)data(spmeinvivo) getnse(spmeinvivo$data)
Filter ions/peaks based on retention time hierarchical clustering, paired mass distances(PMD) and PMD frequency analysis.
getpaired( list, rtcutoff = 10, ng = NULL, digits = 2, accuracy = 4, corcutoff = NULL )getpaired( list, rtcutoff = 10, ng = NULL, digits = 2, accuracy = 4, corcutoff = NULL )
list |
a peaks list with mass to charge, retention time and intensity data |
rtcutoff |
cutoff of the distances in retention time hierarchical clustering analysis, default 10 |
ng |
cutoff of global PMD's retention time group numbers, If ng = NULL, 20 percent of RT cluster will be used as ng, default NULL. |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
accuracy |
measured mass or mass to charge ratio in digits, default 4 |
corcutoff |
cutoff of the correlation coefficient, 0.6 is suggested, default NULL |
list with tentative isotope, multi-chargers, adducts, and neutral loss peaks' index, retention time clusters.
data(spmeinvivo) pmd <- getpaired(spmeinvivo)data(spmeinvivo) pmd <- getpaired(spmeinvivo)
Get pmd for specific reaction
getpmd(list, pmd, rtcutoff = 10, corcutoff = NULL, digits = 2, accuracy = 4)getpmd(list, pmd, rtcutoff = 10, corcutoff = NULL, digits = 2, accuracy = 4)
list |
a list with mzrt profile |
pmd |
a specific paired mass distance or a vector of pmds |
rtcutoff |
cutoff of the distances in retention time hierarchical clustering analysis, default 10 |
corcutoff |
cutoff of the correlation coefficient, default NULL |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
accuracy |
measured mass or mass to charge ratio in digits, default 4 |
list with paired peaks for specific pmd or pmds.
getpaired,getstd,getsda,getrda
data(spmeinvivo) pmd <- getpmd(spmeinvivo,pmd=15.99)data(spmeinvivo) pmd <- getpmd(spmeinvivo,pmd=15.99)
Get pmd details for specific reaction after the removal of isotopouge.
getpmddf(mz, group = NULL, pmd = NULL, digits = 2, mdrange = c(0.25, 0.9))getpmddf(mz, group = NULL, pmd = NULL, digits = 2, mdrange = c(0.25, 0.9))
mz |
a vector of mass to charge ratio. |
group |
mass to charge ratio group from either retention time or mass spectrometry imaging segmentation. |
pmd |
a specific paired mass distance or a vector of pmds |
digits |
mass or mass to charge ratio accuracy for pmd, default 2. |
mdrange |
mass defect range to ignore. Default c(0.25,0.9) to retain the possible reaction related paired mass. |
dataframe with paired peaks for specific pmd or pmds. When group is provided, a column named net will be generated to show if certain pmd will be local(within the same group) or global(across the groups)
getpaired,getstd,getsda,getrda
data(spmeinvivo) pmddf <- getpmddf(spmeinvivo$mz,pmd=15.99)data(spmeinvivo) pmddf <- getpmddf(spmeinvivo$mz,pmd=15.99)
Link pos mode peak list with neg mode peak list by pmd.
getposneg(pos, neg, pmd = 2.02, digits = 2)getposneg(pos, neg, pmd = 2.02, digits = 2)
pos |
a list with mzrt profile collected from positive mode. |
neg |
a list with mzrt profile collected from negative mode. |
pmd |
numeric or numeric vector |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
dataframe with filtered positive and negative peak list
Get Pseudo-Spectrum as peaks cluster based on correlation analysis.
getpseudospectrum( list, corcutoff = NULL, rtcutoff = 10, accuracy = 4, ng = NULL, digits = 2 )getpseudospectrum( list, corcutoff = NULL, rtcutoff = 10, accuracy = 4, ng = NULL, digits = 2 )
list |
A list containing peak intensities, m/z values, and retention times. Must include elements: mz, rt, data. |
corcutoff |
Cutoff value for correlation coefficient (default: 0.9). |
rtcutoff |
Cutoff value for retention time clustering (default: 10). |
accuracy |
Number of decimal places for m/z rounding (default: 4). |
ng |
cutoff of global PMD's retention time group numbers, If ng = NULL, 20 percent of RT cluster will be used as ng, default NULL. |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
A list with pseudo-spectrum clustering results.
data(spmeinvivo) pseudo <- getpseudospectrum(spmeinvivo)data(spmeinvivo) pseudo <- getpseudospectrum(spmeinvivo)
Perform structure/reaction directed analysis for mass only.
getrda( mz, pmd = NULL, freqcutoff = 10, digits = 3, top = 20, formula = NULL, mdrange = c(0.25, 0.9), verbose = FALSE )getrda( mz, pmd = NULL, freqcutoff = 10, digits = 3, top = 20, formula = NULL, mdrange = c(0.25, 0.9), verbose = FALSE )
mz |
numeric vector for independent mass or mass to charge ratio. Mass to charge ratio from GlobalStd algorithm is suggested. Isomers would be excluded automated |
pmd |
a specific paired mass distance or a vector of pmds, default NULL |
freqcutoff |
pmd frequency cutoff for structures or reactions, default 10 |
digits |
mass or mass to charge ratio accuracy for pmd, default 3 |
top |
top n pmd frequency cutoff when the freqcutoff is too small for large data set |
formula |
vector for formula when you don't have mass or mass to charge ratio data |
mdrange |
mass defect range to ignore. Default c(0.25,0.9) to retain the possible reaction related paired mass |
verbose |
logic, if TURE, return will be llist with paired mass distances table. Default FALSE. |
logical matrix with row as the same order of mz or formula and column as high frequency pmd group when verbose is FALSE
data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) sda <- getrda(spmeinvivo$mz[std$stdmassindex]) sda <- getrda(spmeinvivo$mz, pmd = c(2.016,15.995,18.011,14.016))data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) sda <- getrda(spmeinvivo$mz[std$stdmassindex]) sda <- getrda(spmeinvivo$mz, pmd = c(2.016,15.995,18.011,14.016))
Get quantitative paired peaks list for specific reaction/pmd
getreact( list, pmd, rtcutoff = 10, digits = 2, accuracy = 4, cvcutoff = 30, outlier = FALSE, method = "static", ... )getreact( list, pmd, rtcutoff = 10, digits = 2, accuracy = 4, cvcutoff = 30, outlier = FALSE, method = "static", ... )
list |
a list with mzrt profile and data |
pmd |
a specific paired mass distances |
rtcutoff |
cutoff of the distances in retention time hierarchical clustering analysis, default 10 |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
accuracy |
measured mass or mass to charge ratio in digits, default 4 |
cvcutoff |
ratio or intensity cv cutoff for quantitative paired peaks, default 30 |
outlier |
logical, if true, outlier of ratio will be removed, default False. |
method |
quantification method can be 'static' or 'dynamic'. See details. |
... |
other parameters for getpmd |
PMD based reaction quantification methods have two options: 'static' will only consider the stable mass pairs across samples and such reactions will be limited by the enzyme or other factors than substrates. 'dynamic' will consider the unstable paired masses by normalization the relatively unstable peak with stable peak between paired masses and such reactions will be limited by one or both peaks in the paired masses.
list with quantitative paired peaks.
getpaired,getstd,getsda,getrda,getpmd,
data(spmeinvivo) pmd <- getreact(spmeinvivo,pmd=15.99)data(spmeinvivo) pmd <- getreact(spmeinvivo,pmd=15.99)
Perform structure/reaction directed analysis for peaks list.
getsda( list, rtcutoff = 10, corcutoff = NULL, digits = 2, accuracy = 4, freqcutoff = NULL )getsda( list, rtcutoff = 10, corcutoff = NULL, digits = 2, accuracy = 4, freqcutoff = NULL )
list |
a list with mzrt profile |
rtcutoff |
cutoff of the distances in retention time hierarchical clustering analysis, default 10 |
corcutoff |
cutoff of the correlation coefficient, default NULL |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
accuracy |
measured mass or mass to charge ratio in digits, default 4 |
freqcutoff |
pmd frequency cutoff for structures or reactions, default NULL. This cutoff will be found by PMD network analysis when it is NULL. |
list with tentative isotope, adducts, and neutral loss peaks' index, retention time clusters.
data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) sda <- getsda(std)data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) sda <- getsda(std)
Evaluate the similarity of two matrices or dataframes
getsim(x, y, dim = NULL)getsim(x, y, dim = NULL)
x |
Matrix or dataframe with samples in column and features in row (Original data) |
y |
Matrix or dataframe with samples in column and features in row (Reduced data) |
dim |
number of retained dimensions for PCASF. Defaults to all. |
A numeric vector containing PCASF, RV coefficient, and Mantel test r (Pearson and Spearman).
data(spmeinvivo) re <- globalstd(spmeinvivo) x <- spmeinvivo$data y <- spmeinvivo$data[re$stdmassindex, ] getsim(x, y)data(spmeinvivo) re <- globalstd(spmeinvivo) x <- spmeinvivo$data y <- spmeinvivo$data[re$stdmassindex, ] getsim(x, y)
Identify standard ions through retention time clustering and PMD relationships
getstd(list, digits = 2, accuracy = 4)getstd(list, digits = 2, accuracy = 4)
list |
A list object from getpaired() containing paired features |
digits |
Rounding digits for mass differences |
accuracy |
Mass accuracy for standard ion identification |
List with added standard ion indices and metadata
data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd)data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd)
Get multiple injections index for selected retention time
gettarget(rt, drt = 10, n = 6)gettarget(rt, drt = 10, n = 6)
rt |
retention time vector for peaks in seconds |
drt |
retention time drift for targeted analysis in seconds, default 10. |
n |
max ions numbers within retention time drift windows |
index for each injection
data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) index <- gettarget(std$rt[std$stdmassindex]) table(index)data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) index <- gettarget(std$rt[std$stdmassindex]) table(index)
GlobalStd algorithm with structure/reaction directed analysis
globalstd( list, rtcutoff = 10, ng = NULL, corcutoff = NULL, digits = 2, accuracy = 4, freqcutoff = NULL, sda = FALSE )globalstd( list, rtcutoff = 10, ng = NULL, corcutoff = NULL, digits = 2, accuracy = 4, freqcutoff = NULL, sda = FALSE )
list |
a peaks list with mass to charge, retention time and intensity data |
rtcutoff |
cutoff of the distances in cluster, default 10 |
ng |
cutoff of global PMD's retention time group numbers, If ng = NULL, 20 percent of RT cluster will be used as ng, default NULL. |
corcutoff |
cutoff of the correlation coefficient, default NULL |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
accuracy |
measured mass or mass to charge ratio in digits, default 4 |
freqcutoff |
pmd frequency cutoff for structures or reactions, default NULL. This cutoff will be found by PMD network analysis when it is NULL. |
sda |
logical, option to perform structure/reaction directed analysis, default FALSE. |
list with GlobalStd algorithm processed data.
getpaired,getstd,getsda,plotstd,plotstdsda,plotstdrt
data(spmeinvivo) re <- globalstd(spmeinvivo)data(spmeinvivo) re <- globalstd(spmeinvivo)
A dataframe containing HMDB with unique accurate mass pmd with three digits frequency larger than 1 and accuracy percentage larger than 0.9.
data(hmdb)data(hmdb)
A dataframe with atoms numbers of C, H, O, N, P, S
accuracy of atom numbers prediction
pmd with two digits
pmd with three digits
A dataframe containing reaction related accurate mass pmd and related reaction formula with KEGG ID
data(keggrall)data(keggrall)
A dataframe with KEGG reaction, their realted pmd and atoms numbers of C, H, O, N, P, S
KEGG reaction ID
pmd with three digits
mass spectrometry contaminants database for PMD check
data(MaConDa)data(MaConDa)
A data frame from doi:10.1093/bioinformatics/bts527 with 308 rows and 5 variables:
MaConDa ID
contaminants
contaminants fomula
exact mass of contaminants
type of contaminant
A dataframe containing multiple reaction database ID and their related accurate mass pmd and related reactions
data(omics)data(omics)
A dataframe with reaction and their realted pmd
KEGG reaction ID
RHEA_ID
reaction direction
master reaction RHEA ID
ec reaction ID
ecocyc reaction ID
macie reaction ID
metacyc reaction ID
reactome reaction ID
reaction related compounds
pmd with two digits
pmd with three digits
Converts a compact string grammar into the list-of-steps format accepted by
getchainseq. Steps are separated by semicolons. Each step is a
numeric PMD (or * for wildcard) optionally followed by a quantifier:
+ one or more (min=1, max=Inf)
* zero or more (min=0, max=Inf)
? zero or one (min=0, max=1)
{n} exactly n
{n,m} n to m times
{n,} at least n times
Whitespace is ignored.
parse_pmd_pattern(s)parse_pmd_pattern(s)
s |
a single character string, e.g. |
a list of step specs suitable for getchainseq(pattern = ...)
parse_pmd_pattern("162.0528; -18.0106{0,3}") parse_pmd_pattern("*; 14.0157+")parse_pmd_pattern("162.0528; -18.0106{0,3}") parse_pmd_pattern("*; 14.0157+")
Compare matrices using PCA similarity factor
pcasf(x, y, dim = NULL)pcasf(x, y, dim = NULL)
x |
Matrix with sample in column and features in row |
y |
Matrix is compared to x. |
dim |
number of retained dimensions in the comparison. Defaults to all. |
Ratio of projected variance to total variance
Edgar Zanella Alvarenga
Singhal, A. and Seborg, D. E. (2005), Clustering multivariate time-series data. J. Chemometrics, 19: 427-438. doi: 10.1002/cem.945
c1 <- matrix(rnorm(16),nrow=4) c2 <- matrix(rnorm(16),nrow=4) pcasf(c1, c2)c1 <- matrix(rnorm(16),nrow=4) c2 <- matrix(rnorm(16),nrow=4) pcasf(c1, c2)
plot PMD KEGG network for certain compounds and output network average distance and degree
plotcn(formula, name, pmd)plotcn(formula, name, pmd)
formula |
Chemical formula |
name |
Compound name |
pmd |
specific paired mass distances |
plotcn('C6H12O6','Glucose',c(2.016,14.016,15.995))plotcn('C6H12O6','Glucose',c(2.016,14.016,15.995))
Plot the mass pairs and high frequency mass distances
plotpaired(list, index = NULL, digits = 2, ...)plotpaired(list, index = NULL, digits = 2, ...)
list |
a list from getpaired function |
index |
index for PMD value |
digits |
mass or mass to charge ratio accuracy for pmd, default 2 |
... |
other parameters for plot function |
data(spmeinvivo) pmd <- getpaired(spmeinvivo) plotpaired(pmd)data(spmeinvivo) pmd <- getpaired(spmeinvivo) plotpaired(pmd)
Plot the retention time group
plotrtg(list, ...)plotrtg(list, ...)
list |
a list from getpaired function |
... |
other parameters for plot function |
data(spmeinvivo) pmd <- getpaired(spmeinvivo) plotrtg(pmd)data(spmeinvivo) pmd <- getpaired(spmeinvivo) plotrtg(pmd)
Plot the specific structure directed analysis(SDA) groups
plotsda(list, ...)plotsda(list, ...)
list |
a list from getpmd function |
... |
other parameters for plot function |
getstd, globalstd,plotstd,plotpaired,plotstdrt
data(spmeinvivo) re <- getpmd(spmeinvivo,pmd=78.9) plotsda(re)data(spmeinvivo) re <- getpmd(spmeinvivo,pmd=78.9) plotsda(re)
Plot the std mass from GlobalStd algorithm
plotstd(list)plotstd(list)
list |
a list from getstd function |
data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) plotstd(std)data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) plotstd(std)
Plot the std mass from GlobalStd algorithm in certain retention time groups
plotstdrt(list, rtcluster, ...)plotstdrt(list, rtcluster, ...)
list |
a list from getstd function |
rtcluster |
retention time group index |
... |
other parameters for plot function |
getstd, globalstd,plotstd,plotpaired,plotstdsda
data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) plotstdrt(std,rtcluster = 6)data(spmeinvivo) pmd <- getpaired(spmeinvivo) std <- getstd(pmd) plotstdrt(std,rtcluster = 6)
Plot the std mass from GlobalStd algorithm in structure directed analysis(SDA) groups
plotstdsda(list, index = NULL, ...)plotstdsda(list, index = NULL, ...)
list |
a list from getsda function |
index |
index for PMD value |
... |
other parameters for plot function |
getstd, globalstd,plotstd,plotpaired,plotstdrt
data(spmeinvivo) re <- globalstd(spmeinvivo, sda=TRUE) plotstdsda(re)data(spmeinvivo) re <- globalstd(spmeinvivo, sda=TRUE) plotstdsda(re)
Shiny application for PMD analysis
runPMD()runPMD()
Shiny application for PMD network analysis
runPMDnet()runPMDnet()
A dataset containing common Paired mass distances of substructure, ions replacements, and reaction
data(sda)data(sda)
A data frame with 146 rows and 4 variables:
Paired mass distances
potential sources
references
b for biological reaction and e for environmental reaction
A peaks list dataset containing 9 samples from 3 fish with triplicates samples for each fish from LC-MS.
data(spmeinvivo)data(spmeinvivo)
A list with 4 variables from 1459 LC-MS peaks:
mass to charge ratios
retention time
intensity matrix
group information