Repository 'mspurity_frag4feature'
hg clone https://toolshed.g2.bx.psu.edu/repos/computational-metabolomics/mspurity_frag4feature

Changeset 0:ab65999a5430 (2019-11-27)
Next changeset 1:61ebae7e09f5 (2019-12-05)
Commit message:
"planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit cb903cd93f9378cfb5eeb68512a54178dcea7bbc-dirty"
added:
averageFragSpectra.R
combineAnnotations.R
createDatabase.R
createMSP.R
dbconfig.R
dimsPredictPuritySingle.R
filterFragSpectra.R
flagRemove.R
frag4feature.R
frag4feature.xml
macros.xml
purityA.R
purityX.R
spectralMatching.R
test-data/LCMSMS_1.mzML
test-data/LCMSMS_2.mzML
test-data/LCMS_1.mzML
test-data/LCMS_2.mzML
test-data/PR100037.sqlite
test-data/PR100037.txt
test-data/averageFragSpectra_output_all.RData
test-data/averageFragSpectra_output_all.tsv
test-data/averageFragSpectra_output_all_only.RData
test-data/averageFragSpectra_output_all_only.tsv
test-data/averageFragSpectra_output_inter.RData
test-data/averageFragSpectra_output_inter.tsv
test-data/averageFragSpectra_output_intra.RData
test-data/averageFragSpectra_output_intra.tsv
test-data/combineAnnotations_combined_annotations.sqlite
test-data/combineAnnotations_combined_annotations.tsv
test-data/combineAnnotations_input_beams.tsv
test-data/combineAnnotations_input_metfrag.tsv
test-data/combineAnnotations_input_probmetab.tsv
test-data/combineAnnotations_input_sirus_csifingerid.tsv
test-data/combinedAnnotation_input_spectralMatching.sqlite
test-data/createDatabase_output.sqlite
test-data/createDatabase_output_eic.sqlite
test-data/createMSP_input_metadata.tsv
test-data/createMSP_output_av_all.msp
test-data/createMSP_output_av_all_and_all_xcms.msp
test-data/createMSP_output_av_all_metadata.msp
test-data/createMSP_output_av_inter.msp
test-data/createMSP_output_av_intra.msp
test-data/createMSP_output_max.msp
test-data/createMSP_output_scans_all.msp
test-data/dimsPredictPuritySingle_full_scan.mzML
test-data/dimsPredictPuritySingle_input_dimspy_peakmatrix.tsv
test-data/dimsPredictPuritySingle_output.tsv
test-data/filterFragSpectra_output.RData
test-data/filterFragSpectra_output_frag.tsv
test-data/filterFragSpectra_output_prec.tsv
test-data/flagRemove_input.RData
test-data/flagRemove_output.tsv
test-data/frag4feature_output.RData
test-data/frag4feature_output.tsv
test-data/metab_compound_subset.sqlite
test-data/purityA_output.RData
test-data/purityA_output.tsv
test-data/purityX_output.Rdata
test-data/purityX_output.tsv
test-data/spectralMatching_db_with_spectral_matching.sqlite
test-data/spectralMatching_db_with_spectral_matching_instrumentTypes.sqlite
test-data/spectralMatching_input_massbank_test.sqlite
test-data/spectralMatching_matched_results.tsv
test-data/spectralMatching_matched_results_instrumentTypes.tsv
test-data/spectralMatching_xcms_matched_results.tsv
test-data/spectralMatching_xcms_matched_results_instrumentTypes.tsv
test-data/xset_group_LCMS_1_LCMS_2_LCMSMS_1_LCMSMS_2.RData
b
diff -r 000000000000 -r ab65999a5430 averageFragSpectra.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/averageFragSpectra.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,165 @@
+library(optparse)
+library(msPurity)
+library(xcms)
+print(sessionInfo())
+
+
+get_av_spectra <- function(x){
+
+  if (length(x$av_intra)>0){
+    av_intra_df <- plyr::ldply(x$av_intra)
+
+    if (nrow(av_intra_df)==0){
+      av_intra_df <- NULL
+    }else{
+      av_intra_df$method <- 'intra'
+    }
+
+  }else{
+    av_intra_df <- NULL
+  }
+
+  if ((is.null(x$av_inter)) || (nrow(x$av_inter)==0)){
+    av_inter_df <- NULL
+  }else{
+    av_inter_df <- x$av_inter
+    av_inter_df$method <- 'inter'
+  }
+
+  if ((is.null(x$av_all)) || (nrow(x$av_all)==0)){
+    av_all_df <- NULL
+  }else{
+    av_all_df <- x$av_all
+    av_all_df$method <- 'all'
+  }
+
+  combined <- plyr::rbind.fill(av_intra_df, av_inter_df, av_all_df)
+
+  return(combined)
+}
+
+
+option_list <- list(
+  make_option("--out_rdata", type="character"),
+  make_option("--out_peaklist", type="character"),
+  make_option("--pa", type="character"),
+
+  make_option("--av_level", type="character"),
+
+  make_option("--minfrac", default=0.5),
+  make_option("--minnum", default=1),
+  make_option("--ppm", default=5.0),
+
+  make_option("--snr", default=0),
+
+  make_option("--ra", default=0),
+
+  make_option("--av", default="median", type="character"),
+  make_option("--sumi", action="store_true"),
+
+  make_option("--rmp", action="store_true"),
+  make_option("--cores", default=1)
+)
+
+opt <- parse_args(OptionParser(option_list=option_list))
+print(opt)
+
+
+loadRData <- function(rdata_path, name){
+#loads an RData file, and returns the named xset object if it is there
+    load(rdata_path)
+    return(get(ls()[ls() %in% name]))
+}
+
+# Requires
+pa <- loadRData(opt$pa, 'pa')
+
+pa@cores <- opt$cores
+
+if(is.null(opt$rmp)){
+  rmp = FALSE
+}else{
+  rmp = TRUE
+}
+
+if(is.null(opt$sumi)){
+
+  sumi = FALSE
+}else{
+  sumi = TRUE
+
+}
+
+
+if(opt$av_level=="intra"){
+
+  pa <- msPurity::averageIntraFragSpectra(pa,
+                                      minfrac=opt$minfrac,
+                                      minnum=opt$minnum,
+                                      ppm=opt$ppm,
+                                      snr=opt$snr,
+                                      ra=opt$ra,
+                                      av=opt$av,
+                                      sumi=sumi,
+                                      rmp=rmp,
+                                      cores=opt$cores)
+
+} else if(opt$av_level=="inter"){
+
+  pa <- msPurity::averageInterFragSpectra(pa,
+                                      minfrac=opt$minfrac,
+                                      minnum=opt$minnum,
+                                      ppm=opt$ppm,
+                                      snr=opt$snr,
+                                      ra=opt$ra,
+                                      av=opt$av,
+                                      sumi=sumi,
+                                      rmp=rmp,
+                                      cores=opt$cores)
+} else if(opt$av_level=="all"){
+
+  pa <- msPurity::averageAllFragSpectra(pa,
+                                        minfrac=opt$minfrac,
+                                        minnum=opt$minnum,
+                                        ppm=opt$ppm,
+                                        snr=opt$snr,
+                                        ra=opt$ra,
+                                        av=opt$av,
+                                        sumi=sumi,
+                                        rmp=rmp,
+                                        cores=opt$cores)
+
+}
+
+print(pa)
+save(pa, file=opt$out_rdata)
+
+
+if (length(pa)>0){
+
+  av_spectra <- plyr::ldply(pa@av_spectra, get_av_spectra)
+
+  if (nrow(av_spectra)==0){
+    message('No average spectra available')
+  } else{
+    colnames(av_spectra)[1] <- 'grpid'
+    av_spectra$grpid <- names(pa@av_spectra)[av_spectra$grpid]
+    
+    if((length(pa@av_intra_params)>0) || (length(pa@av_inter_params)>0) ){
+        # Add some extra info (only required if av_intra or av_inter performed)
+        colnames(av_spectra)[2] <- 'fileid'
+        av_spectra$avid <- 1:nrow(av_spectra)
+        
+        filenames <- sapply(av_spectra$fileid, function(x) names(pa@fileList)[as.integer(x)])
+        # filenames_galaxy <- sapply(av_spectra$fileid, function(x) basename(pa@fileList[as.integer(x)]))
+        
+        av_spectra = as.data.frame(append(av_spectra, list(filename = filenames), after=2))
+    }
+
+
+    print(head(av_spectra))
+    write.table(av_spectra, opt$out_peaklist, row.names=FALSE, sep='\t')
+
+  }
+}
+
b
diff -r 000000000000 -r ab65999a5430 combineAnnotations.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/combineAnnotations.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,103 @@
+library(optparse)
+library(msPurity)
+print(sessionInfo())
+
+# Get the parameter
+option_list <- list(
+  make_option(c("-s","--sm_resultPth"),type="character"),
+  make_option(c("-m","--metfrag_resultPth"),type="character"),
+  make_option(c("-c","--sirius_csi_resultPth"),type="character"),
+  make_option(c("-p","--probmetab_resultPth"),type="character"),
+  make_option(c("-l","--ms1_lookup_resultPth"),type="character"),
+
+  make_option("--ms1_lookup_checkAdducts", action="store_true"),
+  make_option("--ms1_lookup_keepAdducts", type="character", default=NA),
+  make_option("--ms1_lookup_dbSource", type="character", default="hmdb"),
+
+  make_option("--sm_weight", type="numeric"),
+  make_option("--metfrag_weight", type="numeric"),
+  make_option("--sirius_csi_weight", type="numeric"),
+  make_option("--probmetab_weight", type="numeric"),
+  make_option("--ms1_lookup_weight", type="numeric"),
+  make_option("--biosim_weight", type="numeric"),
+
+  make_option("--create_new_database", action="store_true"),
+  make_option("--outdir", type="character", default="."),
+
+  make_option("--compoundDbType", type="character", default="sqlite"),
+  make_option("--compoundDbPth", type="character", default=NA),
+  make_option("--compoundDbHost", type="character", default=NA)
+)
+opt <- parse_args(OptionParser(option_list=option_list))
+
+print(opt)
+
+if (!is.null(opt$create_new_database)){
+  sm_resultPth <-  file.path(opt$outdir, 'combined_annotations.sqlite')
+  file.copy(opt$sm_resultPth, sm_resultPth)
+}else{
+  sm_resultPth <- opt$sm_resultPth
+}
+
+if (is.null(opt$ms1_lookup_checkAdducts)){
+  opt$ms1_lookup_checkAdducts <- FALSE
+}
+if (!is.null(opt$ms1_lookup_keepAdducts)){
+    opt$ms1_lookup_keepAdducts <- gsub("__ob__", "[", opt$ms1_lookup_keepAdducts)
+    opt$ms1_lookup_keepAdducts <- gsub("__cb__", "]", opt$ms1_lookup_keepAdducts)
+    ms1_lookup_keepAdducts <- strsplit(opt$ms1_lookup_keepAdducts, ",")[[1]]
+}
+
+weights <-list('sm'=opt$sm_weight,
+               'metfrag'=opt$metfrag_weight,
+               'sirius_csifingerid'= opt$sirius_csi_weight,
+               'probmetab'=opt$probmetab_weight,
+               'ms1_lookup'=opt$ms1_lookup_weight,
+               'biosim'=opt$biosim_weight
+               )
+print(weights)
+if (round(!sum(unlist(weights),0)==1)){
+
+  stop(paste0('The weights should sum to 1 not ', sum(unlist(weights))))
+}
+
+if (opt$compoundDbType=='local_config'){
+  # load in compound config
+  # Soure local function taken from workflow4metabolomics
+  source_local <- function(fname){ argv <- commandArgs(trailingOnly=FALSE); base_dir <- dirname(substring(argv[grep("--file=", argv)], 8)); source(paste(base_dir, fname, sep="/")) }
+  source_local("dbconfig.R")
+}else{
+  compoundDbPth = opt$compoundDbPth
+  compoundDbType = opt$compoundDbType
+  compoundDbName = NA
+  compoundDbHost = NA
+  compoundDbPort = NA
+  compoundDbUser = NA
+  compoundDbPass = NA
+}
+
+
+
+summary_output <- msPurity::combineAnnotations(
+                            sm_resultPth = sm_resultPth,
+                            compoundDbPth = compoundDbPth,
+                            metfrag_resultPth = opt$metfrag_resultPth,
+                            sirius_csi_resultPth = opt$sirius_csi_resultPth,
+                            probmetab_resultPth = opt$probmetab_resultPth,
+                            ms1_lookup_resultPth = opt$ms1_lookup_resultPth,
+                            ms1_lookup_keepAdducts = ms1_lookup_keepAdducts,
+                            ms1_lookup_checkAdducts = opt$ms1_lookup_checkAdducts,
+
+                            compoundDbType = compoundDbType,
+                            compoundDbName = compoundDbName,
+                            compoundDbHost = compoundDbHost,
+                            compoundDbPort = compoundDbPort,
+                            compoundDbUser = compoundDbUser,
+                            compoundDbPass = compoundDbPass,
+                            weights = weights)
+
+write.table(summary_output, file.path(opt$outdir, 'combined_annotations.tsv'), sep = '\t', row.names = FALSE)
+
+
+closeAllConnections()
+
b
diff -r 000000000000 -r ab65999a5430 createDatabase.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/createDatabase.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,167 @@
+library(msPurity)
+library(optparse)
+library(xcms)
+library(CAMERA)
+print(sessionInfo())
+print('CREATING DATABASE')
+
+xset_pa_filename_fix <- function(opt, pa, xset){
+
+  if (!is.null(opt$mzML_files) && !is.null(opt$galaxy_names)){
+    # NOTE: Relies on the pa@fileList having the names of files given as 'names' of the variables
+    # needs to be done due to Galaxy moving the files around and screwing up any links to files
+
+    filepaths <- trimws(strsplit(opt$mzML_files, ',')[[1]])
+    filepaths <- filepaths[filepaths != ""]
+    new_names <- basename(filepaths)
+
+    galaxy_names <- trimws(strsplit(opt$galaxy_names, ',')[[1]])
+    galaxy_names <- galaxy_names[galaxy_names != ""]
+
+    nsave <- names(pa@fileList)
+    old_filenames  <- basename(pa@fileList)
+    pa@fileList <- filepaths[match(names(pa@fileList), galaxy_names)]
+    names(pa@fileList) <- nsave
+
+    pa@puritydf$filename <- basename(pa@fileList[match(pa@puritydf$filename, old_filenames)])
+    pa@grped_df$filename <- basename(pa@fileList[match(pa@grped_df$filename, old_filenames)])
+  }
+
+
+ if(!all(basename(pa@fileList)==basename(xset@filepaths))){
+    if(!all(names(pa@fileList)==basename(xset@filepaths))){
+       print('FILELISTS DO NOT MATCH')
+       message('FILELISTS DO NOT MATCH')
+       quit(status = 1)
+    }else{
+      xset@filepaths <- unname(pa@fileList)
+    }
+  }
+
+  print(xset@phenoData)
+  print(xset@filepaths)
+
+  return(list(pa, xset))
+}
+
+
+
+
+option_list <- list(
+  make_option(c("-o", "--outDir"), type="character"),
+  make_option("--pa", type="character"),
+  make_option("--xset_xa", type="character"),
+  make_option("--xcms_camera_option", type="character"),
+  make_option("--eic", action="store_true"),
+  make_option("--cores", default=4),
+  make_option("--mzML_files", type="character"),
+  make_option("--galaxy_names", type="character"),
+  make_option("--grpPeaklist", type="character")
+)
+
+
+# store options
+opt<- parse_args(OptionParser(option_list=option_list))
+print(opt)
+
+loadRData <- function(rdata_path, name){
+#loads an RData file, and returns the named xset object if it is there
+    load(rdata_path)
+    return(get(ls()[ls() %in% name]))
+}
+
+getxcmsSetObject <- function(xobject) {
+    # XCMS 1.x
+    if (class(xobject) == "xcmsSet")
+        return (xobject)
+    # XCMS 3.x
+    if (class(xobject) == "XCMSnExp") {
+        # Get the legacy xcmsSet object
+        suppressWarnings(xset <- as(xobject, 'xcmsSet'))
+        sampclass(xset) <- xset@phenoData$sample_group
+        return (xset)
+    }
+}
+
+
+print(paste('pa', opt$pa))
+print(opt$xset)
+
+print(opt$xcms_camera_option)
+# Requires
+pa <- loadRData(opt$pa, 'pa')
+
+
+print(pa@fileList)
+
+
+
+if (opt$xcms_camera_option=='xcms'){
+
+  xset <- loadRData(opt$xset, c('xset','xdata'))
+  xset <- getxcmsSetObject(xset)
+  fix <- xset_pa_filename_fix(opt, pa, xset)
+  pa <- fix[[1]]
+  xset <- fix[[2]]
+  xa <- NULL
+}else{
+
+  xa <- loadRData(opt$xset, 'xa')
+  fix <- xset_pa_filename_fix(opt, pa, xa@xcmsSet)
+  pa <- fix[[1]]
+  xa@xcmsSet <- fix[[2]]
+  xset <- NULL
+}
+
+
+
+if(is.null(opt$grp_peaklist)){
+  grpPeaklist = NA
+}else{
+  grpPeaklist = opt$grp_peaklist
+}
+
+
+
+dbPth <- msPurity::createDatabase(pa,
+                                   xset=xset,
+                                   xsa=xa,
+                                   outDir=opt$outDir,
+                                   grpPeaklist=grpPeaklist,
+                                   dbName='createDatabase_output.sqlite'
+)
+
+
+
+
+
+if (!is.null(opt$eic)){
+
+  if (is.null(xset)){
+      xset <- xa@xcmsSet
+  }
+  # previous check should have matched filelists together
+  xset@filepaths <- unname(pa@fileList)
+
+  convert2Raw <- function(x, xset){
+    sid <- unique(x$sample)
+    # for each file get list of peaks
+    x$rt_raw <- xset@rt$raw[[sid]][match(x$rt, xset@rt$corrected[[sid]])]
+    x$rtmin_raw <- xset@rt$raw[[sid]][match(x$rtmin, xset@rt$corrected[[sid]])]
+    x$rtmax_raw <- xset@rt$raw[[sid]][match(x$rtmax, xset@rt$corrected[[sid]])]
+    return(x)
+
+  }
+
+  xset@peaks <- as.matrix(plyr::ddply(data.frame(xset@peaks), ~ sample, convert2Raw, xset=xset))
+
+  # Saves the EICS into the previously created database
+  px <- msPurity::purityX(xset,
+                          saveEIC = TRUE,
+                          cores=1,
+                          sqlitePth=dbPth,
+                          rtrawColumns = TRUE)
+
+}
+
+closeAllConnections()
b
diff -r 000000000000 -r ab65999a5430 createMSP.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/createMSP.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,102 @@
+library(optparse)
+library(msPurity)
+print(sessionInfo())
+
+# Get the parameter
+option_list <- list(
+  make_option("--rdata_input",type="character"),
+  make_option("--method",type="character"),
+  make_option("--metadata",type="character"),
+  make_option("--metadata_cols",type="character"),
+  make_option("--metadata_cols_filter",type="character"),
+  make_option("--adduct_split", action="store_true"),
+  make_option("--xcms_groupids",type="character"),
+  make_option("--filter",action="store_true"),
+  make_option("--intensity_ra",type="character"),
+  make_option("--include_adducts",type="character"),
+  make_option("--msp_schema",type="character"),
+  make_option("--out_dir",type="character", default=".")
+)
+opt <- parse_args(OptionParser(option_list=option_list))
+
+print(opt)
+
+load(opt$rdata_input)
+
+if (is.null(opt$metadata)){
+  metadata <- NULL
+}else{
+  metadata <- read.table(opt$metadata,  header = TRUE, sep='\t', stringsAsFactors = FALSE, check.names = FALSE)
+
+  if(!opt$metadata_cols_filter==''){
+     metadata_cols_filter <- strsplit(opt$metadata_cols_filter, ',')[[1]]
+
+     metadata <- metadata[,metadata_cols_filter, drop=FALSE]
+     print(metadata)
+
+     if (!"grpid" %in% colnames(metadata)){
+       metadata$grpid <- 1:nrow(metadata)
+     }
+
+     print(metadata)
+
+  }
+
+}
+
+
+
+if (is.null(opt$metadata_cols) || opt$metadata_cols==''){
+    metadata_cols <- NULL
+}else{
+    metadata_cols <- opt$metadata_cols
+
+}
+
+
+if(is.null(opt$adduct_split)){
+  adduct_split <- FALSE
+}else{
+  adduct_split <- TRUE
+}
+
+if (is.null(opt$xcms_groupids)){
+  xcms_groupids <- NULL
+}else{
+  xcms_groupids <- trimws(strsplit(opt$xcms_groupids, ',')[[1]])
+}
+
+if (opt$include_adducts=='None'){
+  include_adducts <- ''
+}else{
+  include_adducts <- opt$include_adducts
+  include_adducts <- gsub("__ob__", "[", include_adducts)
+  include_adducts <- gsub("__cb__", "]", include_adducts)
+  include_adducts <- trimws(include_adducts)
+
+  include_adducts <- gsub(",", " ", include_adducts)
+
+}
+
+
+if(is.null(opt$filter)){
+  filter <- FALSE
+}else{
+  filter <- TRUE
+}
+
+
+
+msPurity::createMSP(pa,
+                    msp_file_pth = file.path(opt$out_dir, 'lcmsms_spectra.msp'),
+                    metadata = metadata,
+                    metadata_cols = metadata_cols,
+                    method = opt$method,
+                    adduct_split = adduct_split,
+                    xcms_groupids = xcms_groupids,
+                    filter = filter,
+                    intensity_ra=opt$intensity_ra,
+                    include_adducts=include_adducts,
+                    msp_schema=opt$msp_schema)
+
+print('msp created')
b
diff -r 000000000000 -r ab65999a5430 dbconfig.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dbconfig.R Wed Nov 27 14:23:10 2019 -0500
b
@@ -0,0 +1,22 @@
+compoundDbType <- 'mysql'
+compoundDbPth <- NA
+compoundDbName <- 'metab_compound'
+compoundDbPort <- '3306'
+compoundDbUser <- 'metab_compound'
+compoundDbPass <- 'metab_compound'
+
+q_dbPth <- NA
+q_dbType <- NA
+q_dbHost <- NA
+q_dbPort <- NA
+q_dbUser <- NA
+q_dbName <- NA
+q_dbPass <- NA
+
+l_dbPth <- NA
+l_dbType <- NA
+l_dbHost <- NA
+l_dbPort <- NA
+l_dbUser <- NA
+l_dbName <- NA
+l_dbPass <- NA
b
diff -r 000000000000 -r ab65999a5430 dimsPredictPuritySingle.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dimsPredictPuritySingle.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,163 @@
+library(msPurity)
+library(optparse)
+print(sessionInfo())
+
+option_list <- list(
+  make_option(c("--mzML_file"), type="character"),
+  make_option(c("--mzML_files"), type="character"),
+  make_option(c("--mzML_filename"), type="character", default=''),
+  make_option(c("--mzML_galaxy_names"), type="character", default=''),
+  make_option(c("--peaks_file"), type="character"),
+  make_option(c("-o", "--out_dir"), type="character"),
+  make_option("--minoffset", default=0.5),
+  make_option("--maxoffset", default=0.5),
+  make_option("--ilim", default=0.05),
+  make_option("--ppm", default=4),
+  make_option("--dimspy", action="store_true"),
+  make_option("--sim", action="store_true"),
+  make_option("--remove_nas", action="store_true"),
+  make_option("--iwNorm", default="none", type="character"),
+  make_option("--file_num_dimspy", default=1),
+  make_option("--exclude_isotopes", action="store_true"),
+  make_option("--isotope_matrix", type="character")
+)
+
+# store options
+opt<- parse_args(OptionParser(option_list=option_list))
+
+print(sessionInfo())
+print(opt)
+
+print(opt$mzML_files)
+print(opt$mzML_galaxy_names)
+
+str_to_vec <- function(x){
+    print(x)
+    x <- trimws(strsplit(x, ',')[[1]])
+    return(x[x != ""])
+}
+
+find_mzml_file <- function(mzML_files, galaxy_names, mzML_filename){
+    mzML_filename <- trimws(mzML_filename)
+    mzML_files <- str_to_vec(mzML_files)
+    galaxy_names <- str_to_vec(galaxy_names)
+    if (mzML_filename %in% galaxy_names){
+        return(mzML_files[galaxy_names==mzML_filename])
+    }else{
+        stop(paste("mzML file not found - ", mzML_filename))
+    }
+}
+
+
+if (is.null(opt$dimspy)){
+    df <- read.table(opt$peaks_file, header = TRUE, sep='\t')
+    if (file.exists(opt$mzML_file)){
+        mzML_file <- opt$mzML_file
+    }else if (!is.null(opt$mzML_files)){
+        mzML_file <- find_mzml_file(opt$mzML_files, opt$mzML_galaxy_names, 
+                                    opt$mzML_filename)
+    }else{
+        mzML_file <- file.path(opt$mzML_file, filename)    
+    }
+}else{
+    indf <- read.table(opt$peaks_file,
+                       header = TRUE, sep='\t', stringsAsFactors = FALSE)
+    
+    filename <- colnames(indf)[8:ncol(indf)][opt$file_num_dimspy]
+    print(filename)
+    # check if the data file is mzML or RAW (can only use mzML currently) so
+    # we expect an mzML file of the same name in the same folder
+    indf$i <- indf[,colnames(indf)==filename]
+    indf[,colnames(indf)==filename] <- as.numeric(indf[,colnames(indf)==filename])
+    
+    filename = sub("raw", "mzML", filename, ignore.case = TRUE)
+    print(filename)
+    
+    
+    if (file.exists(opt$mzML_file)){
+        mzML_file <- opt$mzML_file
+    }else if (!is.null(opt$mzML_files)){
+        mzML_file <- find_mzml_file(opt$mzML_files, opt$mzML_galaxy_names, filename)
+    }else{
+        mzML_file <- file.path(opt$mzML_file, filename)    
+    }
+    
+    # Update the dimspy output with the correct information 
+    df <- indf[4:nrow(indf),]
+    if ('blank_flag' %in% colnames(df)){
+        df <- df[df$blank_flag==1,]
+    }
+    colnames(df)[colnames(df)=='m.z'] <- 'mz'
+    
+    if ('nan' %in% df$mz){
+        df[df$mz=='nan',]$mz <- NA
+    }
+    df$mz <- as.numeric(df$mz)
+}
+
+if (!is.null(opt$remove_nas)){
+  df <- df[!is.na(df$mz),]
+}
+
+if (is.null(opt$isotope_matrix)){
+    im <- NULL
+}else{
+    im <- read.table(opt$isotope_matrix,
+                     header = TRUE, sep='\t', stringsAsFactors = FALSE)
+}
+
+if (is.null(opt$exclude_isotopes)){
+    isotopes <- FALSE
+}else{
+    isotopes <- TRUE
+}
+
+if (is.null(opt$sim)){
+    sim=FALSE
+}else{
+    sim=TRUE
+}
+
+minOffset = as.numeric(opt$minoffset)
+maxOffset = as.numeric(opt$maxoffset)
+
+if (opt$iwNorm=='none'){
+    iwNorm = FALSE
+    iwNormFun = NULL
+}else if (opt$iwNorm=='gauss'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormGauss(minOff=-minOffset, maxOff=maxOffset)
+}else if (opt$iwNorm=='rcosine'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormRcosine(minOff=-minOffset, maxOff=maxOffset)
+}else if (opt$iwNorm=='QE5'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormQE.5()
+}
+
+print('FIRST ROWS OF PEAK FILE')
+print(head(df))
+print(mzML_file)
+predicted <- msPurity::dimsPredictPuritySingle(df$mz,
+                                     filepth=mzML_file,
+                                     minOffset=minOffset,
+                                     maxOffset=maxOffset,
+                                     ppm=opt$ppm,
+                                     mzML=TRUE,
+                                     sim = sim,
+                                     ilim = opt$ilim,
+                                     isotopes = isotopes,
+                                     im = im,
+                                     iwNorm = iwNorm,
+                                     iwNormFun = iwNormFun
+                                     )
+predicted <- cbind(df, predicted)
+
+print(head(predicted))
+print(file.path(opt$out_dir, 'dimsPredictPuritySingle_output.tsv'))
+
+write.table(predicted, 
+            file.path(opt$out_dir, 'dimsPredictPuritySingle_output.tsv'),
+            row.names=FALSE, sep='\t')
+
+
b
diff -r 000000000000 -r ab65999a5430 filterFragSpectra.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/filterFragSpectra.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,100 @@
+library(optparse)
+library(msPurity)
+library(xcms)
+print(sessionInfo())
+
+
+option_list <- list(
+  make_option("--out_rdata", type="character"),
+  make_option("--out_peaklist_prec", type="character"),
+  make_option("--out_peaklist_frag", type="character"),
+  make_option("--pa", type="character"),
+
+  make_option("--ilim", default=0.0),
+  make_option("--plim", default=0.0),
+
+  make_option("--ra", default=0.0),  
+  make_option("--snr", default=0.0),
+
+  make_option("--rmp", action="store_true"),
+  make_option("--snmeth", default="median", type="character")
+)
+
+opt <- parse_args(OptionParser(option_list=option_list))
+print(opt)
+
+
+loadRData <- function(rdata_path, name){
+    #loads an RData file, and returns the named xset object if it is there
+    load(rdata_path)
+    return(get(ls()[ls() %in% name]))
+}
+
+# Requires
+pa <- loadRData(opt$pa, 'pa')
+
+if(is.null(opt$rmp)){
+  opt$rmp = FALSE
+}else{
+  opt$rmp = TRUE
+}
+
+pa <- filterFragSpectra(pa, 
+                        ilim=opt$ilim, 
+                        plim=opt$plim,
+                        ra=opt$ra,
+                        snr=opt$snr,
+                        rmp=opt$rmp,
+                        snmeth=opt$snmeth)
+
+print(pa)
+save(pa, file=opt$out_rdata)
+
+# get the msms data for grpid from the purityA object
+msmsgrp <- function(grpid, pa){
+  msms <- pa@grped_ms2[grpid]
+  
+  grpinfo <- pa@grped_df[pa@grped_df$grpid==grpid,]
+  
+  grpinfo$subsetid <- 1:nrow(grpinfo)
+  result <- plyr::ddply(grpinfo, ~subsetid, setid, msms=msms)
+  return(result)
+}
+
+# Set the relevant details 
+setid <- function(grpinfo_i, msms){
+  msms_i <- msms[[1]][[grpinfo_i$subsetid]]
+  n <- nrow(msms_i)
+  msms_i <- data.frame(msms_i)
+  colnames(msms_i)[1:2] <- c('mz', 'i')
+  m <- cbind('grpid'=rep(grpinfo_i$grpid,n), 'pid'=rep(grpinfo_i$pid,n), 'fileid'=rep(grpinfo_i$fileid,n), msms_i)
+  return(m)
+}
+
+
+
+if (length(pa)>0){
+
+  if (length(pa@grped_ms2)==0){
+    message('No spectra available')
+  } else{
+
+    # get group ids
+    grpids <- unique(as.character(pa@grped_df$grpid))
+
+    # loop through all the group ids
+    df_fragments = plyr::adply(grpids, 1, msmsgrp, pa=pa)
+    df_fragments = merge(df_fragments, pa@puritydf[,c("pid", "acquisitionNum", "precursorScanNum")], by="pid")
+    df_fragments = df_fragments[order(df_fragments$grpid, df_fragments$pid, df_fragments$mz),]
+    #select and reorder columns
+    df_fragments = df_fragments[,c("grpid", "pid", "precursorScanNum", "acquisitionNum", "fileid", "mz", "i", "snr", "ra", "purity_pass_flag", "intensity_pass_flag", "ra_pass_flag", "snr_pass_flag", "pass_flag")]
+
+    pa@grped_df$filename = sapply(pa@grped_df$fileid, function(x) names(pa@fileList)[as.integer(x)])
+
+    print(head(pa@grped_df))    
+    write.table(pa@grped_df, opt$out_peaklist_prec, row.names=FALSE, sep='\t')
+    print(head(df_fragments))
+    write.table(df_fragments, opt$out_peaklist_frag, row.names=FALSE, sep='\t')
+  }
+}
+
b
diff -r 000000000000 -r ab65999a5430 flagRemove.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/flagRemove.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,204 @@
+library(msPurity)
+library(optparse)
+print(sessionInfo())
+option_list <- list(
+  make_option(c("-o", "--out_dir"), type="character", default=getwd(),
+              help="Output folder for resulting files [default = %default]"
+  ),
+  make_option(c("-x", "--xset_path"), type="character", default=file.path(getwd(),"xset.rds"),
+              help="The path to the xcmsSet object [default = %default]"
+  ),
+  make_option("--polarity", default=NA,
+              help="polarity (just used for naming purpose for files being saved) [positive, negative, NA] [default %default]"
+  ),
+  make_option("--rsd_i_blank", default=100,
+              help="RSD threshold for the blank [default = %default]"
+  ),
+  make_option("--minfrac_blank", default=0.5,
+              help="minimum fraction of files for features needed for the blank [default = %default]"
+  ),
+  make_option("--rsd_rt_blank", default=100,
+              help="RSD threshold for the RT of the blank [default = %default]"
+  ),
+
+  make_option("--ithres_blank", default=0,
+              help="Intensity threshold for the blank [default = %default]"
+  ),
+  make_option("--s2b", default=10,
+              help="fold change (sample/blank) needed for sample peak to be allowed. e.g.
+                    if s2b set to 10 and the recorded sample 'intensity' value was 100 and blank was 10.
+                    1000/10 = 100, so sample has fold change higher than the threshold and the peak
+                    is not considered a blank [default = %default]"
+  ),
+  make_option("--blank_class", default='blank', type="character",
+              help="A string representing the class that will be used for the blank.[default = %default]"
+  ),
+  make_option("--egauss_thr", default=NA,
+              help="Threshold for filtering out non gaussian shaped peaks. Note this only works
+                            if the 'verbose columns' and 'fit gauss' was used with xcms
+                            [default = %default]"
+  ),
+  make_option("--rsd_i_sample", default=100,
+              help="RSD threshold for the samples [default = %default]"
+  ),
+  make_option("--minfrac_sample", default=0.8,
+              help="minimum fraction of files for features needed for the samples [default = %default]"
+  ),
+  make_option("--rsd_rt_sample", default=100,
+              help="RSD threshold for the RT of the samples [default = %default]"
+  ),
+  make_option("--ithres_sample", default=5000,
+              help="Intensity threshold for the sample [default = %default]"
+  ),
+  make_option("--grp_rm_ids", default=NA,
+              help="vector of grouped_xcms peaks to remove (corresponds to the row from xcms::group output)
+              [default = %default]"
+  ),
+  make_option("--remove_spectra",  action="store_true",
+              help=" TRUE if flagged spectra is to be removed [default = %default]"
+  ),
+  make_option("--minfrac_xcms", default=0.5,
+              help="minfrac for xcms  grouping [default = %default]"
+  ),
+  make_option("--mzwid", default=0.001,
+              help="mzwid for xcms  grouping [default = %default]"
+  ),
+  make_option("--bw", default=5,
+              help="bw for xcms  grouping [default = %default]"
+  ),
+
+  make_option("--temp_save",  action="store_true",
+              help="Assign True if files for each step saved (for testing purposes) [default = %default]"
+  ),
+
+  make_option("--samplelist",  type="character", help="Sample list to determine the blank class")
+
+
+
+
+
+)
+
+  #make_option("--multilist", action="store_true"
+  #            help="NOT CURRENTLY IMPLEMENTED: If paired blank removal is to be performed a - multilist -  sample list file has to be provided"
+  #),
+
+# store options
+opt<- parse_args(OptionParser(option_list=option_list))
+
+opt <- replace(opt, opt == "NA", NA)
+
+
+
+
+if (is.null(opt$temp_save)){
+    temp_save<-FALSE
+}else{
+    temp_save<-TRUE
+}
+
+if (is.null(opt$remove_spectra)){
+    remove_spectra<-FALSE
+}else{
+    remove_spectra<-TRUE
+}
+
+
+print(opt)
+
+getxcmsSetObject <- function(xobject) {
+    # XCMS 1.x
+    if (class(xobject) == "xcmsSet")
+        return (xobject)
+    # XCMS 3.x
+    if (class(xobject) == "XCMSnExp") {
+        # Get the legacy xcmsSet object
+        suppressWarnings(xset <- as(xobject, 'xcmsSet'))
+        sampclass(xset) <- xset@phenoData$sample_group
+        return (xset)
+    }
+}
+
+
+loadRData <- function(rdata_path, name){
+#loads an RData file, and returns the named xset object if it is there
+    load(rdata_path)
+    return(get(ls()[ls() %in% name]))
+}
+
+xset <- getxcmsSetObject(loadRData(opt$xset_path, c('xset','xdata')))
+
+print(xset)
+if (is.null(opt$samplelist)){
+    blank_class <- opt$blank_class
+}else{
+    samplelist <- read.table(opt$samplelist, sep='\t', header=TRUE)
+    samplelist_blank <- unique(samplelist$sample_class[samplelist$blank=='yes'])
+
+    chosen_blank <- samplelist_blank[samplelist_blank %in% xset@phenoData$class]
+    if (length(chosen_blank)>1){
+        print('ERROR: only 1 blank is currently allowed to be used with this tool')
+        exit()
+    }
+    blank_class <- as.character(chosen_blank)
+    print(blank_class)
+}
+
+
+if (is.null(opt$multilist)){
+    ffrm_out <- flag_remove(xset,
+                        pol=opt$polarity,
+                        rsd_i_blank=opt$rsd_i_blank,
+                        minfrac_blank=opt$minfrac_blank,
+                        rsd_rt_blank=opt$rsd_rt_blank,
+                        ithres_blank=opt$ithres_blank,
+                        s2b=opt$s2b,
+                        ref.class=blank_class,
+                        egauss_thr=opt$egauss_thr,
+                        rsd_i_sample=opt$rsd_i_sample,
+                        minfrac_sample=opt$minfrac_sample,
+                        rsd_rt_sample=opt$rsd_rt_sample,
+                        ithres_sample=opt$ithres_sample,
+                        minfrac_xcms=opt$minfrac_xcms,
+                        mzwid=opt$mzwid,
+                        bw=opt$bw,
+                        out_dir=opt$out_dir,
+                        temp_save=temp_save,
+                        remove_spectra=remove_spectra,
+                        grp_rm_ids=unlist(strsplit(as.character(opt$grp_rm_ids), split=", "))[[1]])
+    print('flag remove finished')
+    xset <- ffrm_out[[1]]
+    grp_peaklist <- ffrm_out[[2]]
+    removed_peaks <- ffrm_out[[3]]
+
+    save.image(file=file.path(opt$out_dir, 'xset_filtered.RData'))
+
+    # grpid needed for mspurity ID needed for deconrank... (will clean up at some up)
+    peak_pth <- file.path(opt$out_dir, 'peaklist_filtered.tsv')
+    print(peak_pth)
+    write.table(data.frame('grpid'=rownames(grp_peaklist), 'ID'=rownames(grp_peaklist), grp_peaklist),
+                peak_pth, row.names=FALSE, sep='\t')
+
+    removed_peaks <- data.frame(removed_peaks)
+    write.table(data.frame('ID'=rownames(removed_peaks),removed_peaks),
+        file.path(opt$out_dir, 'removed_peaks.tsv'), row.names=FALSE, sep='\t')
+
+}else{
+
+   
+   # TODO
+   #xsets <- split(xset, multilist_df$multlist)
+   #
+   #mult_grps <- unique(multilist_df$multlist)
+   #
+   #for (mgrp in mult_grps){
+   #   xset_i <- xsets[mgrp]
+   #   xcms::group(xset_i, 
+   #
+   # }
+
+
+
+}
+
+
b
diff -r 000000000000 -r ab65999a5430 frag4feature.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/frag4feature.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,160 @@
+library(optparse)
+library(msPurity)
+library(xcms)
+print(sessionInfo())
+
+xset_pa_filename_fix <- function(opt, pa, xset=NULL){
+
+
+  if (!is.null(opt$mzML_files) && !is.null(opt$galaxy_names)){
+    # NOTE: Relies on the pa@fileList having the names of files given as 'names' of the variables
+    # needs to be done due to Galaxy moving the files around and screwing up any links to files
+
+    filepaths <- trimws(strsplit(opt$mzML_files, ',')[[1]])
+    filepaths <- filepaths[filepaths != ""]
+    new_names <- basename(filepaths)
+
+    galaxy_names <- trimws(strsplit(opt$galaxy_names, ',')[[1]])
+    galaxy_names <- galaxy_names[galaxy_names != ""]
+
+    nsave <- names(pa@fileList)
+    old_filenames  <- basename(pa@fileList)
+
+    pa@fileList <- filepaths[match(names(pa@fileList), galaxy_names)]
+    names(pa@fileList) <- nsave
+
+    pa@puritydf$filename <- basename(pa@fileList[match(pa@puritydf$filename, old_filenames)])
+    pa@grped_df$filename <- basename(pa@fileList[match(pa@grped_df$filename, old_filenames)])
+  }
+  print(pa@fileList)
+
+  if(!is.null(xset)){
+
+    print(xset@filepaths)
+
+    if(!all(basename(pa@fileList)==basename(xset@filepaths))){
+       if(!all(names(pa@fileList)==basename(xset@filepaths))){
+          print('FILELISTS DO NOT MATCH')
+          message('FILELISTS DO NOT MATCH')
+          quit(status = 1)
+       }else{
+          xset@filepaths <- unname(pa@fileList)
+       }
+   }
+ }
+
+  return(list(pa, xset))
+}
+
+
+option_list <- list(
+  make_option(c("-o", "--out_dir"), type="character"),
+  make_option("--pa", type="character"),
+  make_option("--xset", type="character"),
+  make_option("--ppm", default=10),
+  make_option("--plim", default=0.0),
+  make_option("--convert2RawRT", action="store_true"),
+  make_option("--intense", action="store_true"),
+  make_option("--createDB", action="store_true"),
+  make_option("--cores", default=4),
+  make_option("--mzML_files", type="character"),
+  make_option("--galaxy_names", type="character"),
+  make_option("--grp_peaklist", type="character"),
+  make_option("--useGroup", action="store_true")
+)
+
+# store options
+opt<- parse_args(OptionParser(option_list=option_list))
+print(opt)
+
+loadRData <- function(rdata_path, name){
+#loads an RData file, and returns the named xset object if it is there
+    load(rdata_path)
+    return(get(ls()[ls() %in% name]))
+}
+
+# This function retrieve a xset like object
+#@author Gildas Le Corguille lecorguille@sb-roscoff.fr
+getxcmsSetObject <- function(xobject) {
+    # XCMS 1.x
+    if (class(xobject) == "xcmsSet")
+        return (xobject)
+    # XCMS 3.x
+    if (class(xobject) == "XCMSnExp") {
+        # Get the legacy xcmsSet object
+        suppressWarnings(xset <- as(xobject, 'xcmsSet'))
+        sampclass(xset) <- xset@phenoData$sample_group
+        return (xset)
+    }
+}
+
+# Requires
+pa <- loadRData(opt$pa, 'pa')
+xset <- loadRData(opt$xset, c('xset','xdata'))
+xset <- getxcmsSetObject(xset)
+
+pa@cores <- opt$cores
+
+print(pa@fileList)
+print(xset@filepaths)
+
+if(is.null(opt$intense)){
+  intense = FALSE
+}else{
+  intense = TRUE
+}
+
+if(is.null(opt$convert2RawRT)){
+    convert2RawRT = FALSE
+}else{
+    convert2RawRT= TRUE
+}
+
+if(is.null(opt$createDB)){
+    createDB = FALSE
+}else{
+    createDB = TRUE
+}
+
+if(is.null(opt$useGroup)){
+    fix <- xset_pa_filename_fix(opt, pa, xset)
+    pa <- fix[[1]]
+    xset <- fix[[2]]
+    useGroup=FALSE
+}else{
+    # if are only aligning to the group not eah file we do not need to align the files between the xset and pa object
+    print('useGroup')
+    fix <- xset_pa_filename_fix(opt, pa)
+    pa <- fix[[1]]
+    useGroup=TRUE
+}
+
+
+if(is.null(opt$grp_peaklist)){
+    grp_peaklist = NA
+}else{
+    grp_peaklist = opt$grp_peaklist
+}
+print(useGroup)
+
+
+
+pa <- msPurity::frag4feature(pa=pa,
+                             xset=xset,
+                             ppm=opt$ppm,
+                             plim=opt$plim,
+                             intense=intense,
+                             convert2RawRT=convert2RawRT,
+                             db_name='alldata.sqlite',
+                             out_dir=opt$out_dir,
+                             grp_peaklist=grp_peaklist,
+                             create_db=createDB,
+                             use_group=useGroup)
+
+print(pa)
+save(pa, file=file.path(opt$out_dir, 'frag4feature_output.RData'))
+
+pa@grped_df$filename <- sapply(pa@grped_df$fileid, function(x) names(pa@fileList)[as.integer(x)])
+
+print(head(pa@grped_df))
+write.table(pa@grped_df, file.path(opt$out_dir, 'frag4feature_output.tsv'), row.names=FALSE, sep='\t')
b
diff -r 000000000000 -r ab65999a5430 frag4feature.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/frag4feature.xml Wed Nov 27 14:23:10 2019 -0500
[
b'@@ -0,0 +1,168 @@\n+<tool id="mspurity_frag4feature" name="msPurity.frag4feature" version="@TOOL_VERSION@+galaxy@GALAXY_TOOL_VERSION@">\n+    <description>\n+        Assign fragmentation spectra to XCMS features using msPurity\n+    </description>\n+    <macros>\n+        <import>macros.xml</import>\n+    </macros>\n+    <expand macro="requirements"/>\n+    <command detect_errors="exit_code"><![CDATA[\n+        Rscript \'$__tool_directory__/frag4feature.R\'\n+            --out_dir=.\n+            --xset=\'$xset\'\n+            --pa=\'$pa\'\n+            --cores=\\${GALAXY_SLOTS:-4}\n+            #if $file_load_conditional.file_load_select=="yes"\n+                --mzML_files=\'\n+                #for $i in $file_load_conditional.input\n+                    $i,\n+                #end for\n+                \'\n+                --galaxy_names=\'\n+                #for $i in $file_load_conditional.input\n+                    $i.name,\n+                #end for\n+                \'\n+            #end if\n+            #if $useGroup\n+                --useGroup\n+            #end if\n+\n+            --ppm=$ppm\n+            --plim=$plim\n+            #if $intense\n+                --intense\n+            #end if\n+            #if $convert2RawRT\n+                --convert2RawRT\n+            #end if\n+\n+\n+    ]]></command>\n+    <inputs>\n+\n+        <param argument="--xset" type="data"  label="xcmsSet object" \n+               help="grouped xcmsSet object saved as \'xset\' in an RData file"\n+               format="rdata.xcms.raw,rdata.xcms.group,rdata.xcms.retcor,rdata.xcms.fillpeaks,rdata.camera.quick,rdata.camera.positive,rdata.camera.negative,rdata"/>\n+        <param argument="--pa" type="data" label="purityA object" format="rdata"\n+               help="purityA object generated from msPurity_purityA.\n+               Contains details of fragmentation spectra and precursor ion purity results\n+               (output from purityA tool)"/>\n+        <param argument="--ppm" type="float" value="10"\n+               label="ppm error tolerance between precursor mz and XCMS feature mz"\n+               help="Fragmentation will be ignored if the precursor mz value is not within\n+               the ppm error tolerance to the XCMS feature mz"/>\n+        <param argument="--plim" type="float" label="Precursor ion purity threshold"\n+               value="0" max="1" min="0" \n+               help="Fragmentation will be ignore if the precursor ion purity is less than the\n+               threshold (further filtering on the precursor ion purity can be done at the averaging\n+               stage if required)."/>\n+        <param argument="--intense" type="boolean" checked="true"  \n+               label="Should the most intense precursor be used within the isolation window?"\n+               help="If TRUE the most intense precursor will be used. If FALSE the precursor\n+               closest to the center of the isolation window will be used"/>\n+        <param  argument="--convert2RawRT" type="boolean" checked="false" \n+               label="Was retention time correction used?"\n+               help="If retention time correction has been used in XCMS set this to yes"/>\n+        <param argument="--useGroup" type="boolean" checked="false"  \n+              label="For matching fragmentation to a feature, use the grouped feature range"\n+              help="For special cases where the MS2 files have no MS1 data or if the MS1 data in the MS2 file is unreliable"  />\n+\n+        <expand macro="fileload" />\n+\n+    </inputs>\n+    <outputs>\n+        <data name="frag4feature_output_tsv" format="tsv" label="${tool.name} on ${on_string}: tsv"\n+              from_work_dir="frag4feature_output.tsv" />\n+        <data name="frag4feature_output_rdata" format="rdata" label="${tool.name} on ${on_string}: RData"\n+              from_work_dir="frag4feature_output.RData" />\n+    </outputs>\n+    <tests>\n+        <test>\n+            <conditional name="file_load_conditional">\n+                <param name="file_load_select" value="yes"/>\n+  '..b'ame="xset" value="xset_group_LCMS_1_LCMS_2_LCMSMS_1_LCMSMS_2.RData"/>\n+            <param name="pa" value="purityA_output.RData"/>\n+            <output name="frag4feature_output_tsv" value="frag4feature_output.tsv"/>\n+            <output name="frag4feature_output_rdata" value="frag4feature_output.RData" ftype="rdata" compare="sim_size"/>\n+        </test>\n+    </tests>\n+\n+    <help><![CDATA[\n+=============================================================\n+Link fragmentation spectra to XCMS features\n+=============================================================\n+-----------\n+Description\n+-----------\n+\n+**General**\n+\n+Tool to Assign fragmentation spectra (MS/MS) stored within a purityA class object to grouped features within an XCMS xset object.\n+\n+Please note that the xcmsSet object needs to have been grouped.\n+\n+The data inputs are:\n+\n+* A purityA object (generated from purityA) saved in an rdata file.\n+* A xcmsSet grouped object (generated from xcms_group) saved in an rdata file\n+* [optional] a dataset collection of the mzML files to resubmit\n+\n+XCMS calculates individual chromatographic peaks for each mzML file (saved in xset@peaks), these are then grouped together\n+(using xcms.group). Ideally the mzML files that contain the MS/MS spectra also contain sufficient MS1 scans for XCMS to detect\n+MS1 chromatographic features. If this is the case, to determine if a MS2 spectra is to be linked to an XCMS grouped feature,\n+the associated acquisition time of the MS/MS event has to be within the retention time window defined for the individual peaks\n+associated for each file. The precursor m/z value also has to be within the user ppm tolerance to XCMS feature.\n+\n+See below for representation of the linking (the \\*------\\* represent a many-to-many relationship) e.g. 1 or more MS/MS events can be\n+linked to 1 or more individual feature and an individual XCMS feature can be linked to 1 or more grouped XCMS features\n+\n+* \\[grouped XCMS feature - across files\\] \\*------\\*  \\[individual XCMS feature - per file\\] \\*------\\*  \\[MS/MS spectra\\]\n+\n+Alternatively, if the "useGroup" argument is set to TRUE, the full width of the grouped peak (determined as the minimum rtmin\n+and maximum rtmax of the all associated individual peaks) will be used. This option should be used if the mzML file with\n+MS/MS has very limited MS1 data and so individual chromatographic peaks might not be detected with the mzML files containing the\n+MS/MS data. However, it should be noted this may lead to potential inaccurate linking.\n+\n+* \\[grouped XCMS peaks\\] \\*------\\* \\[MS/MS spectra\\]\n+\n+**Example LC-MS/MS processing workflow**\n+\n+\n+* Purity assessments\n+    +  (mzML files) -> purityA -> (pa)\n+* XCMS processing\n+    +  (mzML files) -> xcms.xcmsSet -> xcms.merge -> xcms.group -> xcms.retcor -> xcms.group -> (xset)\n+* Fragmentation processing\n+    + (xset, pa) -> **frag4feature** -> filterFragSpectra -> averageAllFragSpectra -> createDatabase -> spectralMatching -> (sqlite spectral database)\n+\n+**Additional notes**\n+\n+* If using only a single file, then grouping still needs to be performed within XCMS before frag4feature can be used.\n+* Fragmentation spectra below a certain precursor ion purity can be be removed (see plim argument).\n+* A SQLite database can be created directly here but the functionality has been deprecated and the createDatabase function should now be used\n+* Can experience some problems when using XCMS version < 3 and obiwarp retention time correction.\n+\n+See Bioconductor documentation for more details, function msPurity::frag4feature()\n+\n+-----------\n+Outputs\n+-----------\n+* frag4feature_rdata: An updated purityA object saved as rdata file with fragmentation-feature links added\n+* frag4feature_grouped_msms: A flat file of all the XCMS peaks for each grouped feature and the corresponding fragmentation scans\n+* frag4feature_sqlite: An SQLite database of the data (including fragmentation scans)\n+\n+    ]]></help>\n+\n+<expand macro="citations" />\n+\n+</tool>\n'
b
diff -r 000000000000 -r ab65999a5430 macros.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml Wed Nov 27 14:23:10 2019 -0500
[
b'@@ -0,0 +1,364 @@\n+<?xml version="1.0"?>\n+<macros>\n+    <token name="@TOOL_VERSION@">1.12.0</token>\n+    <token name="@GALAXY_TOOL_VERSION@">0</token>\n+\n+    <xml name="requirements">\n+        <requirements>\n+           <requirement type="package" version="@TOOL_VERSION@" >bioconductor-mspurity</requirement>\n+           <requirement type="package" version="1.42.0" >bioconductor-camera</requirement>\n+           <requirement type="package" version="3.8.0" >bioconductor-xcms</requirement>\n+           <requirement type="package" version="1.14.0" >bioconductor-mspuritydata</requirement>\n+           <requirement type="package" version="1.6.4">r-optparse</requirement>\n+           <requirement type="package" version="1.1.1">r-rpostgres</requirement>\n+           <requirement type="package" version="0.10.17">r-rmysql</requirement>\n+            <yield />\n+        </requirements>\n+    </xml>\n+\n+\n+    <xml name="offsets">\n+        <param argument="--minoffset" type="float" label="minoffset" value="0.5"\n+               help="Offset to the \'left\' for the precursor range e.g. if precursor of interest is\n+               100.0 then the range would be from 999.5 to 100.0"/>\n+        <param argument="--maxoffset" type="float" label="maxoffset" value="0.5"\n+               help="Offset to the \'right\' for the precursor range  e.g. if precursor of interest is\n+               100.0 then the range would be from 100.0 to 100.5"/>\n+    </xml>\n+    <xml name="general_params">\n+        <param argument="--ilim" type="float" value="0.05" \n+               label="Threshold to remove peaks below x % of the relative intensity of\n+               precursor of interest"\n+               help="All peaks less than this percentage of the precursor ion of interest will be\n+               removed from the purity calculation, default is 5\\% (0.05).\n+               Essentially a noise filter to remove peaks that are thought to have either none or\n+               very limited impact on the resulting fragmentation spectra."/>\n+        <param argument="--iw_norm" type="select" label="Normalisation for isolation efficiency">\n+                <option value="gauss" >Gaussian</option>\n+                <option value="rcosine" >Raised cosine</option>\n+                <option value="QE5"> Calculated from Q-Exactive for +/- 0.5 Da windows </option>\n+                <option value="none" selected="true" >No normalisation</option>\n+        </param>\n+        <conditional name="isotopes">\n+            <param argument="--isotopes" type="select" label="Handling of isotopic peaks" >\n+                <option value="keep" >Keep isotopes in precursor ion purity calculation</option>\n+                <option value="exclude_default" selected="true" >Exclude C12/C13 isotopes in precursor ion purity calculation</option>\n+                <option value="user" >Exclude a user supplied list of isotopes in purity calculation</option>\n+            </param>\n+            <when value="keep">\n+            </when>\n+            <when value="exclude_default">\n+            </when>\n+            <when value="user">\n+                <param argument="--im" type="data" format="tabular" label="Isotope matrix" help="\n+                 tabular file composing of columns:\n+                  [\'isotope_id\', \'mass diff\', \'abundance of isotope\', \'ppm tol for mz\', \'abundance buffer\',\n+                                  \'charge\', \'relative atomic mass (int)\', \'xflag\'].\n+                The xflag indicates if the larger (mass) isotope is the most abundant or less abundant.\n+                e.g. for c12 to c13, the c13 is less abundant so we flag as 1 for Li6 to Li7, the Li7 is more abundant\n+                so we would flag as 0.\n+                Example row: For C13 isotope (single charge) the row could be [1, 1.003355, 1.07, 4, 0.1, 1, 12, 1]"/>\n+            </when>\n+        </conditional>\n+    </xml>\n+\n+\n+    <xml name="camera_xcms">\n+            <param argument="--camera_xcms" type="select" label="Use CAMERA object or XCMS ob'..b'         <option value="LC-ESI-QIT" selected="true">LC-ESI-QIT</option>\n+                        <option value="LC-ESI-QQ" selected="true">LC-ESI-QQ</option>\n+                        <option value="LC-ESI-QTOF" selected="true">LC-ESI-QTOF</option>\n+                        <option value="LC-ESI-TOF" selected="true">LC-ESI-TOF</option>\n+                        <option value="LC-Q-TOF/MS" selected="true">LC-Q-TOF/MS</option>\n+                        <option value="LC-QTOF" selected="true">LC-QTOF</option>\n+                        <option value="Linear Ion Trap" selected="true">Linear Ion Trap</option>\n+                        <option value="LIT" selected="true">LIT</option>\n+                        <option value="MALDI-QIT" selected="true">MALDI-QIT</option>\n+                        <option value="MALDI-TOF" selected="true">MALDI-TOF</option>\n+                        <option value="MALDI-TOFTOF" selected="true">MALDI-TOFTOF</option>\n+                        <option value="orbitrap" selected="true">orbitrap</option>\n+                        <option value="QIT" selected="true">QIT</option>\n+                        <option value="QIT-FT" selected="true">QIT-FT</option>\n+                        <option value="QIT-TOF" selected="true">QIT-TOF</option>\n+                        <option value="QqQ" selected="true">QqQ</option>\n+                        <option value="Q-TOF" selected="true">Q-TOF</option>\n+                        <option value="Quattro_QQQ" selected="true">Quattro_QQQ</option>\n+                        <option value="none">None</option>\n+                  </param>\n+                  <param argument="--@QL_SHRT@_instrumentTypesUser" type="text" value=""\n+                         help="Types of the instruments to be included in the search. Use a comma to\n+                               separate the instrument types or leave empty to ignore filter."/>\n+                </when>\n+                <when value="false">\n+                </when>\n+            </conditional>\n+            <conditional name="@QL_SHRT@_instruments_cond">\n+                <param name="@QL_SHRT@_instruments_bool" type="boolean" label="Filter on instrument name?" help="" />\n+                <when value="true">\n+                    <param argument="--@QL_SHRT@_instruments" type="text" value=""\n+                         help="Known instrument names to filter on. Use a comma to\n+                               separate the instrument types or leave empty to ignore filter."/>\n+                </when>\n+                <when value="false">\n+                </when>\n+            </conditional>\n+\n+\n+\n+            <conditional name="@QL_SHRT@_spectraTypes_cond">\n+                <param name="@QL_SHRT@_spectraTypes_bool" type="boolean" label="Filter on spectral type?"\n+                help="" />\n+                <when value="true">\n+                    <param argument="--@QL_SHRT@_spectraTypes" type="select" multiple="true"  label="Spectra type" >\n+                        <option value="av_all" selected="true">Averaged all spectra ignoring inter-intra relationships </option>\n+                        <option value="av_inter">Averaged inter spectra</option>\n+                        <option value="av_intra">Averaged intra spectra </option>\n+                        <option value="scans">All individual scans</option>\n+                        <option value="NA">Not applicable/defined</option>\n+                    </param>\n+                </when>\n+                <when value="false">\n+                </when>\n+            </conditional>\n+\n+           <param argument="--@QL_SHRT@_spectraFilter" type="boolean" checked="true"\n+                  label="Ignore any peaks flagged in the spectra in previous stages?"\n+                          help="" />\n+\n+        </section>\n+    </xml>\n+\n+\n+\n+\n+    <xml name="citations">\n+        <citations>\n+            <citation type="doi">10.1021/acs.analchem.6b04358</citation>\n+            <yield />\n+        </citations>\n+    </xml>\n+\n+</macros>\n'
b
diff -r 000000000000 -r ab65999a5430 purityA.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/purityA.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,121 @@
+library(msPurity)
+library(optparse)
+print(sessionInfo())
+
+option_list <- list(
+  make_option(c("-o", "--out_dir"), type="character"),
+  make_option("--mzML_files", type="character"),
+  make_option("--galaxy_names", type="character"),
+  make_option("--minOffset", default=0.5),
+  make_option("--maxOffset", default=0.5),
+  make_option("--ilim", default=0.05),
+  make_option("--iwNorm", default="none", type="character"),
+  make_option("--exclude_isotopes", action="store_true"),
+  make_option("--isotope_matrix", type="character"),
+  make_option("--mostIntense", action="store_true"),
+  make_option("--plotP", action="store_true"),
+  make_option("--nearest", action="store_true"),
+  make_option("--cores", default=4),
+  make_option("--ppmInterp", default=7)
+)
+
+opt <- parse_args(OptionParser(option_list=option_list))
+print(opt)
+
+minOffset = as.numeric(opt$minOffset)
+maxOffset = as.numeric(opt$maxOffset)
+
+if (opt$iwNorm=='none'){
+    iwNorm = FALSE
+    iwNormFun = NULL
+}else if (opt$iwNorm=='gauss'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormGauss(minOff=-minOffset, maxOff=maxOffset)
+}else if (opt$iwNorm=='rcosine'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormRcosine(minOff=-minOffset, maxOff=maxOffset)
+}else if (opt$iwNorm=='QE5'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormQE.5()
+}
+
+filepaths <- trimws(strsplit(opt$mzML_files, ',')[[1]])
+filepaths <- filepaths[filepaths != ""]
+
+
+
+if(is.null(opt$minOffset) || is.null(opt$maxOffset)){
+    offsets = NA
+}else{
+    offsets = as.numeric(c(opt$minOffset, opt$maxOffset))
+}
+
+
+if(is.null(opt$mostIntense)){
+    mostIntense = FALSE
+}else{
+    mostIntense = TRUE
+}
+
+if(is.null(opt$nearest)){
+    nearest = FALSE
+}else{
+    nearest = TRUE
+}
+
+if(is.null(opt$plotP)){
+    plotP = FALSE
+    plotdir = NULL
+}else{
+    plotP = TRUE
+    plotdir = opt$out_dir
+}
+
+
+if (is.null(opt$isotope_matrix)){
+    im <- NULL
+}else{
+    im <- read.table(opt$isotope_matrix,
+                     header = TRUE, sep='\t', stringsAsFactors = FALSE)
+}
+
+if (is.null(opt$exclude_isotopes)){
+    isotopes <- FALSE
+}else{
+    isotopes <- TRUE
+}
+
+pa <- msPurity::purityA(filepaths,
+                        cores = opt$cores,
+                        mostIntense = mostIntense,
+                        nearest = nearest,
+                        offsets = offsets,
+                        plotP = plotP,
+                        plotdir = plotdir,
+                        interpol = "linear",
+                        iwNorm = iwNorm,
+                        iwNormFun = iwNormFun,
+                        ilim = opt$ilim,
+                        mzRback = "pwiz",
+                        isotopes = isotopes,
+                        im = im,
+                        ppmInterp = opt$ppmInterp)
+
+
+if (!is.null(opt$galaxy_names)){
+    galaxy_names <- trimws(strsplit(opt$galaxy_names, ',')[[1]])
+    galaxy_names <- galaxy_names[galaxy_names != ""]
+    names(pa@fileList) <- galaxy_names
+}
+
+print(pa)
+save(pa, file=file.path(opt$out_dir, 'purityA_output.RData'))
+
+pa@puritydf$filename <- sapply(pa@puritydf$fileid, function(x) names(pa@fileList)[as.integer(x)])
+
+print(head(pa@puritydf))
+write.table(pa@puritydf, file.path(opt$out_dir, 'purityA_output.tsv'), row.names=FALSE, sep='\t')
+
+# removed_peaks <- data.frame(removed_peaks)
+# write.table(data.frame('ID'=rownames(removed_peaks),removed_peaks),
+#         file.path(opt$out_dir, 'removed_peaks.txt'), row.names=FALSE, sep='\t')
b
diff -r 000000000000 -r ab65999a5430 purityX.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/purityX.R Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,184 @@
+library(msPurity)
+library(optparse)
+print(sessionInfo())
+
+option_list <- list(
+  make_option(c("--xset_path"), type="character"),
+  make_option(c("-o", "--out_dir"), type="character"),
+  make_option(c("--mzML_path"), type="character"),
+  make_option("--minOffset", default=0.5),
+  make_option("--maxOffset", default=0.5),
+  make_option("--ilim", default=0.05),
+  make_option("--iwNorm", default="none", type="character"),
+  make_option("--exclude_isotopes", action="store_true"),
+  make_option("--isotope_matrix", type="character"),
+  make_option("--purityType", default="purityFWHMmedian"),
+  make_option("--singleFile", default=0),
+  make_option("--cores", default=4),
+  make_option("--xgroups", type="character"),
+  make_option("--rdata_name", default='xset'),
+  make_option("--camera_xcms", default='xset'),
+  make_option("--files", type="character"),
+  make_option("--galaxy_files", type="character"),
+  make_option("--choose_class", type="character"),
+  make_option("--ignore_files", type="character"),
+  make_option("--rtraw_columns",  action="store_true")
+)
+
+
+opt<- parse_args(OptionParser(option_list=option_list))
+print(opt)
+
+
+if (!is.null(opt$xgroups)){
+    xgroups = as.numeric(strsplit(opt$xgroups, ',')[[1]])
+}else{
+    xgroups = NULL
+}
+
+
+
+print(xgroups)
+
+if (!is.null(opt$remove_nas)){
+  df <- df[!is.na(df$mz),]
+}
+
+if (is.null(opt$isotope_matrix)){
+    im <- NULL
+}else{
+    im <- read.table(opt$isotope_matrix,
+                     header = TRUE, sep='\t', stringsAsFactors = FALSE)
+}
+
+if (is.null(opt$exclude_isotopes)){
+    isotopes <- FALSE
+}else{
+    isotopes <- TRUE
+}
+
+if (is.null(opt$rtraw_columns)){
+    rtraw_columns <- FALSE
+}else{
+    rtraw_columns <- TRUE
+}
+
+loadRData <- function(rdata_path, xset_name){
+#loads an RData file, and returns the named xset object if it is there
+    load(rdata_path)
+    return(get(ls()[ls() == xset_name]))
+}
+
+target_obj <- loadRData(opt$xset_path, opt$rdata_name)
+
+if (opt$camera_xcms=='camera'){
+    xset <- target_obj@xcmsSet
+}else{
+    xset <- target_obj
+}
+
+print(xset)
+
+minOffset = as.numeric(opt$minOffset)
+maxOffset = as.numeric(opt$maxOffset)
+
+
+if (opt$iwNorm=='none'){
+    iwNorm = FALSE
+    iwNormFun = NULL
+}else if (opt$iwNorm=='gauss'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormGauss(minOff=-minOffset, maxOff=maxOffset)
+}else if (opt$iwNorm=='rcosine'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormRcosine(minOff=-minOffset, maxOff=maxOffset)
+}else if (opt$iwNorm=='QE5'){
+    iwNorm = TRUE
+    iwNormFun = msPurity::iwNormQE.5()
+}
+
+print(xset@filepaths)
+
+if (!is.null(opt$files)){
+  updated_filepaths <- trimws(strsplit(opt$files, ',')[[1]])
+  updated_filepaths <- updated_filepaths[updated_filepaths != ""]
+  print(updated_filepaths)
+  updated_filenames = basename(updated_filepaths)
+  original_filenames = basename(xset@filepaths)
+  update_idx = match(updated_filenames, original_filenames)
+
+    if (!is.null(opt$galaxy_files)){
+        galaxy_files <- trimws(strsplit(opt$galaxy_files, ',')[[1]])
+        galaxy_files <- galaxy_files[galaxy_files != ""]
+        xset@filepaths <- galaxy_files[update_idx]
+    }else{
+        xset@filepaths <- updated_filepaths[update_idx]
+    }
+}
+
+if (!is.null(opt$choose_class)){
+  classes <- trimws(strsplit(opt$choose_class, ',')[[1]])
+
+
+  ignore_files_class <- which(!as.character(xset@phenoData$class) %in% classes)
+
+  print('choose class')
+  print(ignore_files_class)
+}else{
+  ignore_files_class <- NA
+}
+
+if (!is.null(opt$ignore_files)){
+  ignore_files_string <- trimws(strsplit(opt$ignore_files, ',')[[1]])
+  filenames <- rownames(xset@phenoData)
+  ignore_files <- which(filenames %in% ignore_files_string)
+
+  ignore_files <- unique(c(ignore_files, ignore_files_class))
+  ignore_files <- ignore_files[ignore_files != ""]
+}else{
+  if (anyNA(ignore_files_class)){
+    ignore_files <- NULL
+  }else{
+    ignore_files <- ignore_files_class
+  }
+
+}
+
+print('ignore_files')
+print(ignore_files)
+
+
+ppLCMS <- msPurity::purityX(xset=xset,
+                                offsets=c(minOffset, maxOffset),
+                                cores=opt$cores,
+                                xgroups=xgroups,
+                                purityType=opt$purityType,
+                                ilim = opt$ilim,
+                                isotopes = isotopes,
+                                im = im,
+                                iwNorm = iwNorm,
+                                iwNormFun = iwNormFun,
+                                singleFile = opt$singleFile,
+                                fileignore = ignore_files,
+                                rtrawColumns=rtraw_columns)
+
+
+dfp <- ppLCMS@predictions
+
+# to make compatable with deconrank
+colnames(dfp)[colnames(dfp)=='grpid'] = 'peakID'
+colnames(dfp)[colnames(dfp)=='median'] = 'medianPurity'
+colnames(dfp)[colnames(dfp)=='mean'] = 'meanPurity'
+colnames(dfp)[colnames(dfp)=='sd'] = 'sdPurity'
+colnames(dfp)[colnames(dfp)=='stde'] = 'sdePurity'
+colnames(dfp)[colnames(dfp)=='RSD'] = 'cvPurity'
+colnames(dfp)[colnames(dfp)=='pknm'] = 'pknmPurity'
+if(sum(is.na(dfp$medianPurity))>0){
+    dfp[is.na(dfp$medianPurity),]$medianPurity = 0
+}
+
+
+print(head(dfp))
+write.table(dfp, file.path(opt$out_dir, 'purityX_output.tsv'), row.names=FALSE, sep='\t')
+
+save.image(file.path(opt$out_dir, 'purityX_output.RData'))
b
diff -r 000000000000 -r ab65999a5430 spectralMatching.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/spectralMatching.R Wed Nov 27 14:23:10 2019 -0500
[
b'@@ -0,0 +1,368 @@\n+library(msPurity)\n+library(msPurityData)\n+library(optparse)\n+print(sessionInfo())\n+# load in library spectra config\n+source_local <- function(fname){ argv <- commandArgs(trailingOnly=FALSE); base_dir <- dirname(substring(argv[grep("--file=", argv)], 8)); source(paste(base_dir, fname, sep="/")) }\n+source_local("dbconfig.R")\n+\n+option_list <- list(\n+  make_option(c("-o", "--outDir"), type="character"),\n+  make_option("--q_dbPth", type="character"),\n+  make_option("--l_dbPth", type="character"),\n+\n+  make_option("--q_dbType", type="character", default=NA),\n+  make_option("--l_dbType", type="character", default=NA),\n+\n+  make_option("--q_msp", type="character", default=NA),\n+  make_option("--l_msp", type="character", default=NA),\n+\n+  make_option("--q_defaultDb", action="store_true"),\n+  make_option("--l_defaultDb", action="store_true"),\n+\n+  make_option("--q_ppmPrec", type="double"),\n+  make_option("--l_ppmPrec", type="double"),\n+\n+  make_option("--q_ppmProd", type="double"),\n+  make_option("--l_ppmProd", type="double"),\n+\n+  make_option("--q_raThres", type="double", default=NA),\n+  make_option("--l_raThres", type="double", default=NA),\n+\n+  make_option("--q_polarity", type="character", default=NA),\n+  make_option("--l_polarity", type="character", default=NA),\n+\n+  make_option("--q_purity", type="double", default=NA),\n+  make_option("--l_purity", type="double", default=NA),\n+\n+  make_option("--q_xcmsGroups", type="character", default=NA),\n+  make_option("--l_xcmsGroups", type="character", default=NA),\n+\n+  make_option("--q_pids", type="character", default=NA),\n+  make_option("--l_pids", type="character", default=NA),\n+\n+  make_option("--q_rtrangeMin", type="double", default=NA),\n+  make_option("--l_rtrangeMin", type="double", default=NA),\n+\n+  make_option("--q_rtrangeMax", type="double", default=NA),\n+  make_option("--l_rtrangeMax", type="double", default=NA),\n+\n+  make_option("--q_accessions", type="character", default=NA),\n+  make_option("--l_accessions", type="character", default=NA),\n+\n+  make_option("--q_sources", type="character", default=NA),\n+  make_option("--l_sources", type="character", default=NA),\n+\n+  make_option("--q_sourcesUser", type="character", default=NA),\n+  make_option("--l_sourcesUser", type="character", default=NA),\n+\n+  make_option("--q_instrumentTypes", type="character", default=NA),\n+  make_option("--l_instrumentTypes", type="character", default=NA),\n+\n+  make_option("--q_instrumentTypesUser", type="character", default=NA),\n+  make_option("--l_instrumentTypesUser", type="character", default=NA),\n+\n+  make_option("--q_instruments", type="character", default=NA),\n+  make_option("--l_instruments", type="character", default=NA),\n+\n+  make_option("--q_spectraTypes", type="character", default=NA),\n+  make_option("--l_spectraTypes", type="character", default=NA),\n+\n+  make_option("--q_spectraFilter", action="store_true"),\n+  make_option("--l_spectraFilter", action="store_true"),\n+\n+  make_option("--usePrecursors", action="store_true"),\n+\n+  make_option("--mzW", type="double"),\n+  make_option("--raW", type="double"),\n+\n+  make_option("--rttol", type="double", default=NA),\n+\n+  make_option("--updateDb", action="store_true"),\n+  make_option("--copyDb", action="store_true"),\n+  make_option("--cores", default=1)\n+\n+\n+)\n+\n+# store options\n+opt<- parse_args(OptionParser(option_list=option_list))\n+\n+print(opt)\n+\n+# check if the sqlite databases have any spectra\n+checkSPeakMeta <- function(dbPth, nme){\n+    if(is.null(dbPth)){\n+        return(TRUE)\n+    }else if ((file.exists(dbPth)) & (file.info(dbPth)$size>0)){\n+        con <- DBI::dbConnect(RSQLite::SQLite(), dbPth)\n+        if (DBI::dbExistsTable(con, "s_peak_meta")){\n+            spm <- DBI::dbGetQuery(con, \'SELECT  * FROM s_peak_meta ORDER BY ROWID ASC LIMIT 1\')\n+            return(TRUE)\n+        }else if(DBI::dbExistsTable(con, "library_spectra_meta")){\n+            spm <- DBI::dbGetQuery(con, \'SELECT  * FROM library_spectra_meta ORDER BY ROWI'..b'ta")\n+  l_dbType <- \'sqlite\'\n+}else if (!opt$l_dbType==\'local_config\'){\n+  l_dbType <- opt$l_dbType\n+  l_dbPth <- opt$l_dbPth\n+}\n+\n+\n+q_polarity <- extractMultiple(opt$q_polarity)\n+l_polarity <- extractMultiple(opt$l_polarity)\n+\n+q_xcmsGroups <- extractMultiple(opt$q_xcmsGroups)\n+l_xcmsGroups <- extractMultiple(opt$l_xcmsGroups)\n+\n+q_pids <- extractMultiple(opt$q_pids)\n+l_pids <- extractMultiple(opt$l_pids)\n+\n+q_sources <- extractMultiple(opt$q_sources)\n+l_sources <- extractMultiple(opt$l_sources)\n+\n+q_sourcesUser <- extractMultiple(opt$q_sourcesUser)\n+l_sourcesUser <- extractMultiple(opt$l_sourcesUser)\n+\n+q_sources <-c(q_sources, q_sourcesUser)\n+l_sources <-c(l_sources, l_sourcesUser)\n+\n+q_instrumentTypes <- extractMultiple(opt$q_instrumentTypes)\n+l_instrumentTypes <- extractMultiple(opt$l_instrumentTypes)\n+\n+q_instrumentTypes <-c(q_instrumentTypes, q_instrumentTypes)\n+l_instrumentTypes <-c(l_instrumentTypes, l_instrumentTypes)\n+\n+\n+if(!is.null(opt$l_spectraFilter)){\n+  l_spectraFilter <- TRUE\n+}else{\n+  l_spectraFilter <- FALSE\n+}\n+\n+if(!is.null(opt$q_spectraFilter)){\n+  q_spectraFilter <- TRUE\n+}else{\n+  q_spectraFilter <- FALSE\n+}\n+\n+if(!is.null(opt$updateDb)){\n+  updateDb <- TRUE\n+}else{\n+  updateDb <- FALSE\n+}\n+\n+if(!is.null(opt$copyDb)){\n+  copyDb <- TRUE\n+}else{\n+  copyDb <- FALSE\n+}\n+\n+if(!is.null(opt$l_rtrangeMax)){\n+  l_rtrangeMax <- opt$l_rtrangeMax\n+}else{\n+  l_rtrangeMax <- NA\n+}\n+\n+if(!is.null(opt$q_rtrangeMax)){\n+  q_rtrangeMax <- opt$q_rtrangeMax\n+}else{\n+  q_rtrangeMax <- NA\n+}\n+\n+if(!is.null(opt$l_rtrangeMin)){\n+  l_rtrangeMin <- opt$l_rtrangeMin\n+}else{\n+  l_rtrangeMin <- NA\n+}\n+\n+if(!is.null(opt$q_rtrangeMin)){\n+  q_rtrangeMin <- opt$q_rtrangeMin\n+}else{\n+  q_rtrangeMin <- NA\n+}\n+\n+q_check <- checkSPeakMeta(opt$q_dbPth, \'query\')\n+l_check <- checkSPeakMeta(opt$l_dbPth, \'library\')\n+\n+if (q_check && l_check){\n+    sm <- msPurity::spectralMatching(\n+        q_purity =  opt$q_purity,\n+        l_purity =  opt$l_purity,\n+        \n+        q_ppmProd =  opt$q_ppmProd,\n+        l_ppmProd =  opt$l_ppmProd,\n+        \n+        q_ppmPrec =  opt$q_ppmPrec,\n+        l_ppmPrec =  opt$l_ppmPrec,\n+        \n+        q_raThres =  opt$q_raThres,\n+        l_raThres =  opt$l_raThres,\n+        \n+        q_pol =  q_polarity,\n+        l_pol =  l_polarity,\n+        \n+        q_xcmsGroups = q_xcmsGroups,\n+        l_xcmsGroups = l_xcmsGroups,\n+        \n+        q_pids = q_pids,\n+        l_pids = l_pids,\n+        \n+        q_sources = q_sources,\n+        l_sources = l_sources,\n+        \n+        q_instrumentTypes = q_instrumentTypes,\n+        l_instrumentTypes = l_instrumentTypes,\n+        \n+        q_spectraFilter= q_spectraFilter,\n+        l_spectraFilter= l_spectraFilter,\n+        \n+        l_rtrange=c(l_rtrangeMin, l_rtrangeMax),\n+        q_rtrange=c(q_rtrangeMin, q_rtrangeMax),\n+        \n+        q_accessions = opt$q_accessions,\n+        l_accessions= opt$l_accessions,\n+        \n+        raW = opt$raW,\n+        mzW = opt$mzW,\n+        rttol=opt$rttol,\n+        cores=opt$cores,\n+        \n+        copyDb=copyDb,\n+        updateDb=updateDb,\n+        outPth = "db_with_spectral_matching.sqlite",\n+        \n+        q_dbPth = q_dbPth,\n+        q_dbType = q_dbType,\n+        q_dbName = q_dbName,\n+        q_dbHost = q_dbHost,\n+        q_dbUser = q_dbUser,\n+        q_dbPass = q_dbPass,\n+        q_dbPort = q_dbPort,\n+        \n+        l_dbPth = l_dbPth,\n+        l_dbType = l_dbType,\n+        l_dbName = l_dbName,\n+        l_dbHost = l_dbHost,\n+        l_dbUser = l_dbUser,\n+        l_dbPass = l_dbPass,\n+        l_dbPort = l_dbPort\n+        \n+    )\n+    \n+    sm <- addQueryNameColumn(sm)\n+    # Get name of the query results (and merged with the data frames)\n+    write.table(sm$matchedResults, \'matched_results.tsv\', sep = \'\\t\', row.names = FALSE, col.names = TRUE)\n+    write.table(sm$xcmsMatchedResults, \'xcms_matched_results.tsv\', sep = \'\\t\', row.names = FALSE, col.names = TRUE)\n+    \n+    if(updateDb){\n+        updateDbF(q_con, l_con)\n+    }\n+}\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/LCMSMS_1.mzML
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LCMSMS_1.mzML Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,59217 @@\n+<?xml version="1.0" encoding="utf-8"?>\n+<indexedmzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.2_idx.xsd">\n+  <mzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.0.xsd" id="Daph_LCMSMS_WCX_pos_incl1_run1" version="1.1.0">\n+    <cvList count="2">\n+      <cv id="MS" fullName="Proteomics Standards Initiative Mass Spectrometry Ontology" version="3.74.0" URI="http://psidev.cvs.sourceforge.net/*checkout*/psidev/psi/psi-ms/mzML/controlledVocabulary/psi-ms.obo"/>\n+      <cv id="UO" fullName="Unit Ontology" version="12:10:2011" URI="http://obo.cvs.sourceforge.net/*checkout*/obo/obo/ontology/phenotype/unit.obo"/>\n+    </cvList>\n+    <fileDescription>\n+      <fileContent>\n+        <cvParam cvRef="MS" accession="MS:1000579" name="MS1 spectrum" value=""/>\n+        <cvParam cvRef="MS" accession="MS:1000580" name="MSn spectrum" value=""/>\n+      </fileContent>\n+      <sourceFileList count="2">\n+        <sourceFile id="RAW1" name="Daph_LCMSMS_WCX_pos_incl1_run1.raw" location="file:///F:\\">\n+          <cvParam cvRef="MS" accession="MS:1000768" name="Thermo nativeID format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000563" name="Thermo RAW format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="e909bee4b1944c81b21d310c6aea0f4f9ff98db8"/>\n+        </sourceFile>\n+        <sourceFile id="Daph_LCMSMS_WCX_pos_incl1_run1.mzML" name="Daph_LCMSMS_WCX_pos_incl1_run1.mzML" location="file:///C:\\Users\\tnl495\\Dropbox\\data\\metabolomics\\SJ_FracCollectionOLD\\mzML\\inc1_2_lcms">\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="3cb8ac424abe1f730ca7d27acd1d020bd4e75425"/>\n+        </sourceFile>\n+      </sourceFileList>\n+    </fileDescription>\n+    <referenceableParamGroupList count="1">\n+      <referenceableParamGroup id="CommonInstrumentParams">\n+        <cvParam cvRef="MS" accession="MS:1001911" name="Q Exactive" value=""/>\n+        <cvParam cvRef="MS" accession="MS:1000529" name="instrument serial number" value="Exactive Series slot #1"/>\n+      </referenceableParamGroup>\n+    </referenceableParamGroupList>\n+    <softwareList count="3">\n+      <software id="Xcalibur" version="2.5-204201/2.5.0.2042">\n+        <cvParam cvRef="MS" accession="MS:1000532" name="Xcalibur" value=""/>\n+      </software>\n+      <software id="pwiz" version="3.0.6948">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+      <software id="pwiz_3.0.8789" version="3.0.8789">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+    </softwareList>\n+    <instrumentConfigurationList count="1">\n+      <instrumentConfiguration id="IC1">\n+        <referenceableParamGroupRef ref="CommonInstrumentParams"/>\n+        <componentList count="4">\n+          <source order="1">\n+            <cvParam cvRef="MS" accession="MS:1000073" name="electrospray ionization" value=""/>\n+            <cvParam cvRef="MS" accession="MS:1000057" name="electrospray inlet" value=""/>\n+          </source>\n+          <analyzer order="2">\n+            <cvParam cvRef="MS" accession="MS:1000081" name="quadrupole" value=""/>\n+          </analyzer>\n+          <analyzer order="3">\n+            <cvParam cvRef="MS" accession="MS:1000484" name="orbitrap" value=""/>\n+          </analyzer>\n+          <detector order="4">\n+            <cvParam cvRef="MS" accession="MS:1000624" name="inductive detector" value=""/>\n+          </detector>\n+        </componentList>\n+        <softwareRef ref="Xcalibur"/>\n+      </instrumentConfiguration>\n+    </instrumentConfigurationList>\n+    <dataProcessingList count="2">\n+      <dataProcessing id="pwiz_Reader_Thermo_co'..b'>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=957">7916770</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=958">7922357</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=959">7927904</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=960">7933485</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=961">7947087</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=962">7952768</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=963">7958224</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=964">7963719</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=965">7969276</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=966">7974746</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=967">7990301</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=968">7995897</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=969">8001365</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=970">8006895</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=971">8012338</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=972">8017741</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=973">8035339</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=974">8040881</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=975">8046481</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=976">8052021</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=977">8057442</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=978">8062798</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=979">8081734</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=980">8087193</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=981">8092672</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=982">8098229</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=983">8103853</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=984">8109235</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=985">8128962</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=986">8134448</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=987">8140218</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=988">8145772</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=989">8151229</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=990">8156812</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=991">8178300</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=992">8183939</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=993">8189555</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=994">8194934</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=995">8200225</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=996">8205758</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=997">8228218</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=998">8233684</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=999">8239200</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=1000">8244701</offset>\n+    </index>\n+    <index name="chromatogram">\n+      <offset idRef="TIC">8250399</offset>\n+    </index>\n+  </indexList>\n+  <indexListOffset>8454629</indexListOffset>\n+  <fileChecksum>819e229cf14c82da35c0e98b35657366cf54c1f4</fileChecksum>\n+</indexedmzML>\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/LCMSMS_2.mzML
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LCMSMS_2.mzML Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,59204 @@\n+<?xml version="1.0" encoding="utf-8"?>\n+<indexedmzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.2_idx.xsd">\n+  <mzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.0.xsd" id="Daph_LCMSMS_WCX_pos_incl1_run2" version="1.1.0">\n+    <cvList count="2">\n+      <cv id="MS" fullName="Proteomics Standards Initiative Mass Spectrometry Ontology" version="3.74.0" URI="http://psidev.cvs.sourceforge.net/*checkout*/psidev/psi/psi-ms/mzML/controlledVocabulary/psi-ms.obo"/>\n+      <cv id="UO" fullName="Unit Ontology" version="12:10:2011" URI="http://obo.cvs.sourceforge.net/*checkout*/obo/obo/ontology/phenotype/unit.obo"/>\n+    </cvList>\n+    <fileDescription>\n+      <fileContent>\n+        <cvParam cvRef="MS" accession="MS:1000579" name="MS1 spectrum" value=""/>\n+        <cvParam cvRef="MS" accession="MS:1000580" name="MSn spectrum" value=""/>\n+      </fileContent>\n+      <sourceFileList count="2">\n+        <sourceFile id="RAW1" name="Daph_LCMSMS_WCX_pos_incl1_run2.raw" location="file:///F:\\">\n+          <cvParam cvRef="MS" accession="MS:1000768" name="Thermo nativeID format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000563" name="Thermo RAW format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="5ac3da9d32fbda4c3c9d25f3175e960c2e387e74"/>\n+        </sourceFile>\n+        <sourceFile id="Daph_LCMSMS_WCX_pos_incl1_run2.mzML" name="Daph_LCMSMS_WCX_pos_incl1_run2.mzML" location="file:///C:\\Users\\tnl495\\Dropbox\\data\\metabolomics\\SJ_FracCollectionOLD\\mzML\\inc1_2_lcms">\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="87485c55ac725e02d48c84704bd2273bee06ae1a"/>\n+        </sourceFile>\n+      </sourceFileList>\n+    </fileDescription>\n+    <referenceableParamGroupList count="1">\n+      <referenceableParamGroup id="CommonInstrumentParams">\n+        <cvParam cvRef="MS" accession="MS:1001911" name="Q Exactive" value=""/>\n+        <cvParam cvRef="MS" accession="MS:1000529" name="instrument serial number" value="Exactive Series slot #1"/>\n+      </referenceableParamGroup>\n+    </referenceableParamGroupList>\n+    <softwareList count="3">\n+      <software id="Xcalibur" version="2.5-204201/2.5.0.2042">\n+        <cvParam cvRef="MS" accession="MS:1000532" name="Xcalibur" value=""/>\n+      </software>\n+      <software id="pwiz" version="3.0.6948">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+      <software id="pwiz_3.0.8789" version="3.0.8789">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+    </softwareList>\n+    <instrumentConfigurationList count="1">\n+      <instrumentConfiguration id="IC1">\n+        <referenceableParamGroupRef ref="CommonInstrumentParams"/>\n+        <componentList count="4">\n+          <source order="1">\n+            <cvParam cvRef="MS" accession="MS:1000073" name="electrospray ionization" value=""/>\n+            <cvParam cvRef="MS" accession="MS:1000057" name="electrospray inlet" value=""/>\n+          </source>\n+          <analyzer order="2">\n+            <cvParam cvRef="MS" accession="MS:1000081" name="quadrupole" value=""/>\n+          </analyzer>\n+          <analyzer order="3">\n+            <cvParam cvRef="MS" accession="MS:1000484" name="orbitrap" value=""/>\n+          </analyzer>\n+          <detector order="4">\n+            <cvParam cvRef="MS" accession="MS:1000624" name="inductive detector" value=""/>\n+          </detector>\n+        </componentList>\n+        <softwareRef ref="Xcalibur"/>\n+      </instrumentConfiguration>\n+    </instrumentConfigurationList>\n+    <dataProcessingList count="2">\n+      <dataProcessing id="pwiz_Reader_Thermo_co'..b'>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=957">7925490</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=958">7931053</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=959">7936626</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=960">7942110</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=961">7955571</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=962">7961025</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=963">7966628</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=964">7972176</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=965">7977646</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=966">7982889</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=967">7998489</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=968">8004054</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=969">8009581</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=970">8015137</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=971">8020747</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=972">8026179</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=973">8041774</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=974">8047288</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=975">8052897</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=976">8058322</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=977">8063833</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=978">8069336</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=979">8088112</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=980">8093733</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=981">8099316</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=982">8104710</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=983">8110468</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=984">8115943</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=985">8136549</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=986">8141899</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=987">8147420</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=988">8153010</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=989">8158649</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=990">8164261</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=991">8185720</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=992">8191216</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=993">8196685</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=994">8202157</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=995">8207521</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=996">8212985</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=997">8235666</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=998">8241157</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=999">8246704</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=1000">8252164</offset>\n+    </index>\n+    <index name="chromatogram">\n+      <offset idRef="TIC">8257645</offset>\n+    </index>\n+  </indexList>\n+  <indexListOffset>8461895</indexListOffset>\n+  <fileChecksum>e32ea7778197ca4ebce924d4442e57d1e5133980</fileChecksum>\n+</indexedmzML>\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/LCMS_1.mzML
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LCMS_1.mzML Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,42113 @@\n+<?xml version="1.0" encoding="utf-8"?>\n+<indexedmzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.2_idx.xsd">\n+  <mzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.0.xsd" id="Daph_LCMS_WCX_pos_1" version="1.1.0">\n+    <cvList count="2">\n+      <cv id="MS" fullName="Proteomics Standards Initiative Mass Spectrometry Ontology" version="3.74.0" URI="http://psidev.cvs.sourceforge.net/*checkout*/psidev/psi/psi-ms/mzML/controlledVocabulary/psi-ms.obo"/>\n+      <cv id="UO" fullName="Unit Ontology" version="12:10:2011" URI="http://obo.cvs.sourceforge.net/*checkout*/obo/obo/ontology/phenotype/unit.obo"/>\n+    </cvList>\n+    <fileDescription>\n+      <fileContent>\n+        <cvParam cvRef="MS" accession="MS:1000579" name="MS1 spectrum" value=""/>\n+      </fileContent>\n+      <sourceFileList count="2">\n+        <sourceFile id="RAW1" name="Daph_LCMS_WCX_pos_1.raw" location="file:///D:\\Experiments\\LC_MS\\FractionCollection\\RAW_files">\n+          <cvParam cvRef="MS" accession="MS:1000768" name="Thermo nativeID format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000563" name="Thermo RAW format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="38eb0bf36b6a2190e60fa6d62ae4af2944142955"/>\n+        </sourceFile>\n+        <sourceFile id="Daph_LCMS_WCX_pos_1.mzML" name="Daph_LCMS_WCX_pos_1.mzML" location="file:///C:\\Users\\tnl495\\Dropbox\\data\\metabolomics\\SJ_FracCollectionOLD\\mzML\\inc1_2_lcms">\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="c0ccdc8500b9c09ccb69a9b6e55138d71edc4a4a"/>\n+        </sourceFile>\n+      </sourceFileList>\n+    </fileDescription>\n+    <referenceableParamGroupList count="1">\n+      <referenceableParamGroup id="CommonInstrumentParams">\n+        <cvParam cvRef="MS" accession="MS:1001911" name="Q Exactive" value=""/>\n+        <cvParam cvRef="MS" accession="MS:1000529" name="instrument serial number" value="Exactive Series slot #1"/>\n+      </referenceableParamGroup>\n+    </referenceableParamGroupList>\n+    <softwareList count="3">\n+      <software id="Xcalibur" version="2.5-204201/2.5.0.2042">\n+        <cvParam cvRef="MS" accession="MS:1000532" name="Xcalibur" value=""/>\n+      </software>\n+      <software id="pwiz" version="3.0.7155">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+      <software id="pwiz_3.0.8789" version="3.0.8789">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+    </softwareList>\n+    <instrumentConfigurationList count="1">\n+      <instrumentConfiguration id="IC1">\n+        <referenceableParamGroupRef ref="CommonInstrumentParams"/>\n+        <componentList count="4">\n+          <source order="1">\n+            <cvParam cvRef="MS" accession="MS:1000073" name="electrospray ionization" value=""/>\n+            <cvParam cvRef="MS" accession="MS:1000057" name="electrospray inlet" value=""/>\n+          </source>\n+          <analyzer order="2">\n+            <cvParam cvRef="MS" accession="MS:1000081" name="quadrupole" value=""/>\n+          </analyzer>\n+          <analyzer order="3">\n+            <cvParam cvRef="MS" accession="MS:1000484" name="orbitrap" value=""/>\n+          </analyzer>\n+          <detector order="4">\n+            <cvParam cvRef="MS" accession="MS:1000624" name="inductive detector" value=""/>\n+          </detector>\n+        </componentList>\n+        <softwareRef ref="Xcalibur"/>\n+      </instrumentConfiguration>\n+    </instrumentConfigurationList>\n+    <dataProcessingList count="2">\n+      <dataProcessing id="pwiz_Reader_Thermo_conversion">\n+        <processingMethod order="0" softwareRef="pwiz">\n+          <c'..b'ollerNumber=1 scan=957">21470557</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=958">21499797</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=959">21529493</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=960">21559514</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=961">21589529</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=962">21618976</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=963">21648796</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=964">21678200</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=965">21706922</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=966">21736349</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=967">21764454</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=968">21791916</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=969">21818679</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=970">21845513</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=971">21870439</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=972">21895858</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=973">21920820</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=974">21945987</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=975">21970510</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=976">21995359</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=977">22020057</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=978">22045600</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=979">22071451</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=980">22097578</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=981">22123613</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=982">22148787</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=983">22174144</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=984">22197997</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=985">22221067</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=986">22242710</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=987">22262687</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=988">22282681</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=989">22300972</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=990">22319558</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=991">22337652</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=992">22355229</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=993">22373478</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=994">22391956</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=995">22411335</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=996">22430672</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=997">22451198</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=998">22473129</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=999">22495822</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=1000">22519912</offset>\n+    </index>\n+    <index name="chromatogram">\n+      <offset idRef="TIC">22544914</offset>\n+    </index>\n+  </indexList>\n+  <indexListOffset>22625610</indexListOffset>\n+  <fileChecksum>4af894bbb2eaebad6e2e11393584f73586a50ba3</fileChecksum>\n+</indexedmzML>\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/LCMS_2.mzML
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LCMS_2.mzML Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,42113 @@\n+<?xml version="1.0" encoding="utf-8"?>\n+<indexedmzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.2_idx.xsd">\n+  <mzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.0.xsd" id="Daph_LCMS_WCX_pos_2" version="1.1.0">\n+    <cvList count="2">\n+      <cv id="MS" fullName="Proteomics Standards Initiative Mass Spectrometry Ontology" version="3.74.0" URI="http://psidev.cvs.sourceforge.net/*checkout*/psidev/psi/psi-ms/mzML/controlledVocabulary/psi-ms.obo"/>\n+      <cv id="UO" fullName="Unit Ontology" version="12:10:2011" URI="http://obo.cvs.sourceforge.net/*checkout*/obo/obo/ontology/phenotype/unit.obo"/>\n+    </cvList>\n+    <fileDescription>\n+      <fileContent>\n+        <cvParam cvRef="MS" accession="MS:1000579" name="MS1 spectrum" value=""/>\n+      </fileContent>\n+      <sourceFileList count="2">\n+        <sourceFile id="RAW1" name="Daph_LCMS_WCX_pos_2.raw" location="file:///D:\\Experiments\\LC_MS\\FractionCollection\\RAW_files">\n+          <cvParam cvRef="MS" accession="MS:1000768" name="Thermo nativeID format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000563" name="Thermo RAW format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="d59859cf0a0dba638ded9771e64a56e582173ed4"/>\n+        </sourceFile>\n+        <sourceFile id="Daph_LCMS_WCX_pos_2.mzML" name="Daph_LCMS_WCX_pos_2.mzML" location="file:///C:\\Users\\tnl495\\Dropbox\\data\\metabolomics\\SJ_FracCollectionOLD\\mzML\\inc1_2_lcms">\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="0dfab8bf4928c9c199ed156446aac66c55220f88"/>\n+        </sourceFile>\n+      </sourceFileList>\n+    </fileDescription>\n+    <referenceableParamGroupList count="1">\n+      <referenceableParamGroup id="CommonInstrumentParams">\n+        <cvParam cvRef="MS" accession="MS:1001911" name="Q Exactive" value=""/>\n+        <cvParam cvRef="MS" accession="MS:1000529" name="instrument serial number" value="Exactive Series slot #1"/>\n+      </referenceableParamGroup>\n+    </referenceableParamGroupList>\n+    <softwareList count="3">\n+      <software id="Xcalibur" version="2.5-204201/2.5.0.2042">\n+        <cvParam cvRef="MS" accession="MS:1000532" name="Xcalibur" value=""/>\n+      </software>\n+      <software id="pwiz" version="3.0.7155">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+      <software id="pwiz_3.0.8789" version="3.0.8789">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+    </softwareList>\n+    <instrumentConfigurationList count="1">\n+      <instrumentConfiguration id="IC1">\n+        <referenceableParamGroupRef ref="CommonInstrumentParams"/>\n+        <componentList count="4">\n+          <source order="1">\n+            <cvParam cvRef="MS" accession="MS:1000073" name="electrospray ionization" value=""/>\n+            <cvParam cvRef="MS" accession="MS:1000057" name="electrospray inlet" value=""/>\n+          </source>\n+          <analyzer order="2">\n+            <cvParam cvRef="MS" accession="MS:1000081" name="quadrupole" value=""/>\n+          </analyzer>\n+          <analyzer order="3">\n+            <cvParam cvRef="MS" accession="MS:1000484" name="orbitrap" value=""/>\n+          </analyzer>\n+          <detector order="4">\n+            <cvParam cvRef="MS" accession="MS:1000624" name="inductive detector" value=""/>\n+          </detector>\n+        </componentList>\n+        <softwareRef ref="Xcalibur"/>\n+      </instrumentConfiguration>\n+    </instrumentConfigurationList>\n+    <dataProcessingList count="2">\n+      <dataProcessing id="pwiz_Reader_Thermo_conversion">\n+        <processingMethod order="0" softwareRef="pwiz">\n+          <c'..b'ollerNumber=1 scan=957">21472881</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=958">21502192</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=959">21532988</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=960">21562224</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=961">21592383</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=962">21622438</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=963">21651662</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=964">21681109</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=965">21709919</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=966">21738587</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=967">21766587</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=968">21794424</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=969">21821670</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=970">21847932</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=971">21874374</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=972">21900048</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=973">21925590</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=974">21950580</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=975">21975493</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=976">22001336</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=977">22026168</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=978">22051295</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=979">22076834</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=980">22102767</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=981">22128846</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=982">22154732</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=983">22179947</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=984">22204333</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=985">22227004</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=986">22248527</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=987">22269219</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=988">22288969</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=989">22307675</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=990">22325740</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=991">22343678</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=992">22361299</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=993">22378769</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=994">22397142</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=995">22415744</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=996">22434828</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=997">22454351</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=998">22474782</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=999">22496861</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=1000">22520293</offset>\n+    </index>\n+    <index name="chromatogram">\n+      <offset idRef="TIC">22544771</offset>\n+    </index>\n+  </indexList>\n+  <indexListOffset>22625475</indexListOffset>\n+  <fileChecksum>51e7a0123e3aeb9bb73a6f8de4cd27a991d3e4c8</fileChecksum>\n+</indexedmzML>\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/PR100037.sqlite
b
Binary file test-data/PR100037.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/PR100037.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/PR100037.txt Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,46 @@
+ACCESSION: PR100037
+RECORD_TITLE: Uracil; LC-ESI-QTOF; MS2; CE:Ramp 5-60 V; [M+H]+
+DATE: 2016.01.19 (Created 2009.09.10, modified 2011.05.06)
+AUTHORS: Matsuda F, Suzuki M, Sawada Y, Plant Science Center, RIKEN.
+LICENSE: CC BY-SA
+COMMENT: Acquisition and generation of the data is financially supported in part by CREST/JST.
+CH$NAME: Uracil
+CH$NAME: 2,4-Dihydroxypyrimidine
+CH$NAME: 2,4(1H,3H)-Pyrimidinedione
+CH$NAME: 2,4-Pyrimidinediol
+CH$COMPOUND_CLASS: Pyrimidines
+CH$FORMULA: C4H4N2O2
+CH$EXACT_MASS: 112.02728
+CH$SMILES: O=C(C=1)NC(=O)NC1
+CH$IUPAC: InChI=1S/C4H4N2O2/c7-3-1-2-5-4(8)6-3/h1-2H,(H2,5,6,7,8)
+CH$LINK: CAS 66-22-8
+CH$LINK: CHEMSPIDER 1141
+CH$LINK: KAPPAVIEW KPC01082
+CH$LINK: KEGG C00106
+CH$LINK: KNAPSACK C00001513
+CH$LINK: PUBCHEM CID:1174
+CH$LINK: INCHIKEY ISAKRJDGNUQOIC-UHFFFAOYSA-N
+AC$INSTRUMENT: UPLC Q-Tof Premier, Waters
+AC$INSTRUMENT_TYPE: LC-ESI-QTOF
+AC$MASS_SPECTROMETRY: MS_TYPE MS2
+AC$MASS_SPECTROMETRY: ION_MODE POSITIVE
+AC$MASS_SPECTROMETRY: COLLISION_ENERGY Ramp 5-60 V
+AC$MASS_SPECTROMETRY: DATAFORMAT Continuum
+AC$MASS_SPECTROMETRY: DESOLVATION_GAS_FLOW 600.0 L/Hr
+AC$MASS_SPECTROMETRY: DESOLVATION_TEMPERATURE 400 C
+AC$MASS_SPECTROMETRY: FRAGMENTATION_METHOD LOW-ENERGY CID
+AC$MASS_SPECTROMETRY: IONIZATION ESI
+AC$MASS_SPECTROMETRY: SOURCE_TEMPERATURE 120 C
+AC$CHROMATOGRAPHY: CAPILLARY_VOLTAGE 3.0 kV
+AC$CHROMATOGRAPHY: SAMPLING_CONE 23.0 V
+AC$CHROMATOGRAPHY: SOLVENT CH3CN(0.1%HCOOH)/ H2O(0.1%HCOOH)
+MS$FOCUSED_ION: PRECURSOR_M/Z 113.03508
+MS$FOCUSED_ION: PRECURSOR_TYPE [M+H]+
+PK$SPLASH: splash10-03di-0900000000-ff54f3083ce4ccccfd95
+PK$NUM_PEAK: 3
+PK$PEAK: m/z int. rel.int.
+  92.5026 9.015 78
+  112.5167 9.848 86
+  113.0339 115 999
+//
+
b
diff -r 000000000000 -r ab65999a5430 test-data/averageFragSpectra_output_all.RData
b
Binary file test-data/averageFragSpectra_output_all.RData has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/averageFragSpectra_output_all.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/averageFragSpectra_output_all.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,7375 @@\n+"grpid"\t"fileid"\t"filename"\t"cl"\t"mz"\t"i"\t"snr"\t"rsd"\t"count"\t"total"\t"inPurity"\t"ra"\t"frac"\t"snr_pass_flag"\t"minnum_pass_flag"\t"minfrac_pass_flag"\t"ra_pass_flag"\t"pass_flag"\t"method"\t"avid"\n+"12"\t"1"\t"LCMSMS_2.mzML"\t1\t112.050888061523\t440629.6875\t1\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t1\n+"12"\t"2"\t"LCMSMS_1.mzML"\t1\t112.050880432129\t565117.25\t1.99119365130368\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t2\n+"12"\t"2"\t"LCMSMS_1.mzML"\t2\t126.53768157959\t2499.31469726562\t0.00880634869631973\tNA\t1\t1\t1\t0.442264803855417\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3\n+"12"\tNA\tNA\t1\t112.050884246826\t502873.46875\t1.49559682565184\t17.5046020693718\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t4\n+"12"\tNA\tNA\t2\t126.53768157959\t2499.31469726562\t0.00880634869631973\tNA\t1\t2\t1\t0.442264803855417\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5\n+"12"\tNA\tNA\t1\t112.050884246826\t502873.46875\t1.49559682565184\t17.5046020693718\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t6\n+"12"\tNA\tNA\t2\t126.53768157959\t2499.31469726562\t0.00880634869631973\tNA\t1\t2\t1\t0.442264803855417\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7\n+"14"\t"1"\t"LCMSMS_2.mzML"\t1\t113.034782409668\t13262784\t1\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t8\n+"14"\t"2"\t"LCMSMS_1.mzML"\t1\t112.999992370605\t67035.0703125\t0.0166921251649536\tNA\t1\t1\t1\t0.84163055956917\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t9\n+"14"\t"2"\t"LCMSMS_1.mzML"\t2\t113.034805297852\t7964904.5\t1.98330787483505\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t10\n+"14"\tNA\tNA\t1\t112.999992370605\t67035.0703125\t0.0166921251649536\tNA\t1\t2\t1\t0.84163055956917\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t11\n+"14"\tNA\tNA\t2\t113.03479385376\t10613844.25\t1.49165393741752\t35.2950960285591\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t12\n+"14"\tNA\tNA\t1\t112.999992370605\t67035.0703125\t0.0166921251649536\tNA\t1\t2\t1\t0.84163055956917\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t13\n+"14"\tNA\tNA\t2\t113.03479385376\t10613844.25\t1.49165393741752\t35.2950960285591\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t14\n+"17"\t"1"\t"LCMSMS_2.mzML"\t2\t116.016784667969\t5682.14404296875\t1\t71.4606063273013\t3\t3\t1\t3.81632335062543\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t15\n+"17"\t"1"\t"LCMSMS_2.mzML"\t3\t116.070899963379\t149471.265625\t24.7461349458028\t141.620390523092\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t16\n+"17"\t"1"\t"LCMSMS_2.mzML"\t4\t116.10725402832\t6152.61499023438\t0.790986039739247\t50.735778159677\t2\t3\t0.975316120547933\t4.81700933424858\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t17\n+"17"\t"2"\t"LCMSMS_1.mzML"\t2\t116.016510009766\t3662.43212890625\t0.738786583000151\t29.8076183488603\t2\t3\t0.994688094344781\t2.77138370920908\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t18\n+"17"\t"2"\t"LCMSMS_1.mzML"\t3\t116.070892333984\t165623.640625\t14.5635358356945\t140.530871323806\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t19\n+"17"\t"2"\t"LCMSMS_1.mzML"\t4\t116.107261657715\t6898.55065917969\t0.956173791148399\t91.7164137067514\t2\t3\t0.994688094344781\t4.63500954068241\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t20\n+"17"\tNA\tNA\t1\t116.016647338867\t4672.2880859375\t0.869393291500075\t30.5664369193171\t2\t2\t0.99734404717239\t3.29385352991726\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t21\n+"17"\tNA\tNA\t2\t116.070896148682\t157547.453125\t19.6548353907486\t7.24953254922258\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t22\n+"17"\tNA\tNA\t3\t116.107257843018\t6525.58282470703\t0.873579915443823\t8.08289748224649\t2\t2\t0.985002107446357\t4.7260094374655\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t23\n+"17"\tNA\tNA\t3\t116.016609191895\t4434.369140625\t1\t75.0366299915493\t5\t6\t1\t2.86539049089055\t0.833333333333333\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t24\n+"17"\tNA\tNA\t4\t116.070896148682\t157547.453125\t19.6548353907486\t126.209327379484\t6\t6\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t25\n+"17"\tNA\tNA\t5\t116.107261657715\t6152.61499023438\t0.956173791148399\t62.7691199937618\t4\t6\t0.994688094344781\t4.81700933424858\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t26\n+"41"\t"1"\t"LCMSMS_2.mzML"\t3\t132.102035522461\t273406.25\t1.94054572396439\t152.255466714338\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t27\n+"41"\t"2"\t"LCM'..b'843"\t"1"\t"LCMSMS_2.mzML"\t2\t119.035583496094\t4770.26611328125\t0.88453483152334\tNA\t1\t1\t1\t0.243413958898567\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7346\n+"843"\t"1"\t"LCMSMS_2.mzML"\t3\t137.045806884766\t1959734\t363.387061089596\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7347\n+"843"\t"1"\t"LCMSMS_2.mzML"\t4\t143.80290222168\t3752.88916015625\t0.695885953146795\tNA\t1\t1\t1\t0.19149992601834\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7348\n+"843"\t"1"\t"LCMSMS_2.mzML"\t5\t185.164245605469\t6015.66552734375\t1.11546516847666\tNA\t1\t1\t1\t0.306963369893248\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7349\n+"843"\t"1"\t"LCMSMS_2.mzML"\t6\t188.177719116211\t3627.47534179688\t0.672630879308387\tNA\t1\t1\t1\t0.18510039330832\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7350\n+"843"\t"1"\t"LCMSMS_2.mzML"\t7\t231.17024230957\t75057.1484375\t13.9176013604237\tNA\t1\t1\t1\t3.82996612996968\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7351\n+"843"\t"1"\t"LCMSMS_2.mzML"\t8\t473.909973144531\t4030.2705078125\t0.747319868528105\tNA\t1\t1\t1\t0.205653956496775\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7352\n+"843"\t"2"\t"LCMSMS_1.mzML"\t1\t110.034912109375\t5403.05908203125\t0.126823062941211\tNA\t1\t1\t1\t0.281201446822678\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7353\n+"843"\t"2"\t"LCMSMS_1.mzML"\t2\t118.08659362793\t4443.796875\t0.104306823638177\tNA\t1\t1\t1\t0.231276780739239\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7354\n+"843"\t"2"\t"LCMSMS_1.mzML"\t3\t137.045791625977\t1921419.375\t45.1004304473527\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7355\n+"843"\t"2"\t"LCMSMS_1.mzML"\t4\t231.170379638672\t79803.1953125\t1.87317693705879\tNA\t1\t1\t1\t4.15334602902607\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7356\n+"843"\tNA\tNA\t1\t110.034912109375\t5403.05908203125\t0.126823062941211\tNA\t1\t2\t1\t0.281201446822678\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7357\n+"843"\tNA\tNA\t2\t118.086486816406\t5748.27075195312\t0.706037087693894\t32.0932107785929\t2\t2\t1\t0.295579765803894\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7358\n+"843"\tNA\tNA\t3\t119.035583496094\t4770.26611328125\t0.88453483152334\tNA\t1\t2\t1\t0.243413958898567\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7359\n+"843"\tNA\tNA\t4\t137.045799255371\t1940576.6875\t204.243745768474\t1.39610721548048\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7360\n+"843"\tNA\tNA\t5\t143.80290222168\t3752.88916015625\t0.695885953146795\tNA\t1\t2\t1\t0.19149992601834\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7361\n+"843"\tNA\tNA\t6\t185.164245605469\t6015.66552734375\t1.11546516847666\tNA\t1\t2\t1\t0.306963369893248\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7362\n+"843"\tNA\tNA\t7\t188.177719116211\t3627.47534179688\t0.672630879308387\tNA\t1\t2\t1\t0.18510039330832\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7363\n+"843"\tNA\tNA\t8\t231.170310974121\t77430.171875\t7.89538914874127\t4.33417858681684\t2\t2\t1\t3.99165607949787\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7364\n+"843"\tNA\tNA\t9\t473.909973144531\t4030.2705078125\t0.747319868528105\tNA\t1\t2\t1\t0.205653956496775\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t7365\n+"843"\tNA\tNA\t1\t110.034912109375\t5403.05908203125\t0.126823062941211\tNA\t1\t2\t1\t0.281201446822678\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7366\n+"843"\tNA\tNA\t2\t118.086486816406\t5748.27075195312\t0.706037087693894\t32.0932107785929\t2\t2\t1\t0.295579765803894\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7367\n+"843"\tNA\tNA\t3\t119.035583496094\t4770.26611328125\t0.88453483152334\tNA\t1\t2\t1\t0.243413958898567\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7368\n+"843"\tNA\tNA\t4\t137.045799255371\t1940576.6875\t204.243745768474\t1.39610721548048\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7369\n+"843"\tNA\tNA\t5\t143.80290222168\t3752.88916015625\t0.695885953146795\tNA\t1\t2\t1\t0.19149992601834\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7370\n+"843"\tNA\tNA\t6\t185.164245605469\t6015.66552734375\t1.11546516847666\tNA\t1\t2\t1\t0.306963369893248\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7371\n+"843"\tNA\tNA\t7\t188.177719116211\t3627.47534179688\t0.672630879308387\tNA\t1\t2\t1\t0.18510039330832\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7372\n+"843"\tNA\tNA\t8\t231.170310974121\t77430.171875\t7.89538914874127\t4.33417858681684\t2\t2\t1\t3.99165607949787\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7373\n+"843"\tNA\tNA\t9\t473.909973144531\t4030.2705078125\t0.747319868528105\tNA\t1\t2\t1\t0.205653956496775\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\t7374\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/averageFragSpectra_output_all_only.RData
b
Binary file test-data/averageFragSpectra_output_all_only.RData has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/averageFragSpectra_output_all_only.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/averageFragSpectra_output_all_only.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,1752 @@\n+"grpid"\t"cl"\t"mz"\t"i"\t"snr"\t"rsd"\t"count"\t"total"\t"inPurity"\t"ra"\t"frac"\t"snr_pass_flag"\t"minnum_pass_flag"\t"minfrac_pass_flag"\t"ra_pass_flag"\t"pass_flag"\t"method"\n+"12"\t1\t112.050884246826\t502873.46875\t1.49559682565184\t17.5046020693718\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"12"\t2\t126.53768157959\t2499.31469726562\t0.00880634869631973\tNA\t1\t2\t1\t0.442264803855417\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"14"\t2\t113.000061035156\t54011.0390625\t2.57691623237519\t34.1018464932833\t2\t3\t0.736066781523093\t9.7374815297203\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"14"\t4\t113.034805297852\t7964904.5\t1.98330787483505\t91.7520832138417\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"17"\t3\t116.016609191895\t4434.369140625\t1\t75.0366299915493\t5\t6\t1\t2.86539049089055\t0.833333333333333\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"17"\t4\t116.070896148682\t157547.453125\t19.6548353907486\t126.209327379484\t6\t6\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"17"\t5\t116.107261657715\t6152.61499023438\t0.956173791148399\t62.7691199937618\t4\t6\t0.994688094344781\t4.81700933424858\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"41"\t5\t132.102035522461\t338114.46875\t1.93796749436666\t132.612605267933\t6\t6\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"47"\t4\t110.035266876221\t290341.673828125\t13.283727458927\t129.821929164576\t4\t4\t1\t4.39610206588215\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"47"\t6\t112.050743103027\t12029.1610107422\t0.933419422280179\t135.193058609705\t4\t4\t1\t0.257907789757246\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"47"\t8\t119.035442352295\t200743.407226562\t10.2590441788969\t132.761708401777\t4\t4\t1\t3.17391657883486\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"47"\t13\t137.045837402344\t6519742.5\t301.707275676269\t130.53812412249\t4\t4\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"48"\t4\t110.060367584229\t94015.55859375\t7.53431608997763\t137.313817205995\t8\t8\t0.90879349887876\t6.08202565234109\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"48"\t5\t110.071681976318\t7003.96740722656\t1.61868644745285\t69.7750610286884\t4\t8\t0.685069318171717\t0.524145310011101\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"48"\t21\t138.054893493652\t1430074.53125\t73.5860610306053\t140.532647936552\t8\t8\t0.90879349887876\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"48"\t32\t154.049659729004\t14833.1328125\t1\t90.7138053298562\t4\t8\t0.580512025837304\t0.275005890533781\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"49"\t1\t110.035133361816\t4197.11962890625\t1\tNA\t1\t2\t0.786277688323535\t1.02653133134194\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"49"\t2\t111.032066345215\t3606.22302246094\t0.462338837469477\t26.3932002747712\t2\t2\t0.791549860789046\t0.741714343653164\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"49"\t3\t111.038753509521\t22056.884765625\t2.96658715186508\t16.7999273043384\t2\t2\t0.791549860789046\t4.58563062067649\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"49"\t4\t120.031585693359\t3442.69409179688\t0.820251600189444\tNA\t1\t2\t0.786277688323535\t0.842013967177829\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"49"\t5\t120.038921356201\t14920.083984375\t1.79733456294024\t38.1982171458533\t2\t2\t0.791549860789046\t3.02787468536299\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"49"\t6\t131.267166137695\t2650.74243164062\t0.631562277468702\tNA\t1\t2\t0.786277688323535\t0.648318465515296\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"49"\t7\t137.396865844727\t3584.59228515625\t0.189160230812614\tNA\t1\t2\t0.796822033254558\t0.641676942711624\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"49"\t8\t138.050010681152\t483746.53125\t63.4472415561396\t21.891534281712\t2\t2\t0.791549860789046\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"51"\t1\t108.959754943848\t2408.8056640625\t0.0170069383724454\tNA\t1\t2\t1\t0.0909056422771568\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"51"\t2\t114.089179992676\t568595.515625\t1.08790481407743\t71.6459546083282\t2\t2\t1\t10.699108716044\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"51"\t3\t140.06812286377\t5286829.375\t10.2566080455824\t70.5402270492406\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"51"\t4\t143.032638549805\t2735.88037109375\t0.0193161904091102\tNA\t1\t2\t1\t0.103249077349102\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"62"\t1\t100.021862030029\t18680.7416992188\t4.02661010995664\t50.6242473729593\t2\t4\t0.910692114498729\t5.13524499797'..b'947265625\t0.583223496025283\tNA\t1\t2\t1\t0.416108777817571\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"830"\t39\t329.133895874023\t12967.8857421875\t1.49119642083995\t61.1863320571907\t2\t2\t1\t1.28007337267367\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"830"\t40\t332.25048828125\t4750.3056640625\t0.506875357220451\tNA\t1\t2\t1\t0.472175908904988\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"830"\t41\t342.581665039062\t3982.03881835938\t0.424898415230708\tNA\t1\t2\t1\t0.395810908038663\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"830"\t42\t376.824645996094\t3809.353515625\t0.406472248432138\tNA\t1\t2\t1\t0.378646151591516\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"830"\t43\t426.685913085938\t4104.65283203125\t0.557902445887704\tNA\t1\t2\t1\t0.398043128375099\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t4\t110.071098327637\t19380.7294921875\t1.47221741531924\t2.57917198856445\t2\t3\t1\t1.60158899318814\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t5\t113.020816802979\t9337.1875\t0.715363415744053\t0.468550834499721\t2\t3\t1\t0.772353858275154\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t8\t136.075546264648\t26832.8837890625\t1.9352423424946\t20.5472330009261\t2\t3\t1\t2.20479451763894\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t10\t138.054496765137\t22557.607421875\t1.75474916079065\t5.96641770584321\t2\t3\t1\t1.86916917923724\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t21\t208.058097839355\t58436.056640625\t4.55754655192501\t6.91299505511002\t2\t3\t1\t4.84357906770794\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t25\t226.068435668945\t146951.8125\t10.9806237120536\t8.38155701790506\t2\t3\t1\t12.1215045683109\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t26\t236.147369384766\t6149.79077148438\t0.51290862340198\t32.2241115276443\t2\t3\t1\t0.513813344694387\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t30\t279.0947265625\t24795.88671875\t1.85165140104688\t8.60080191844655\t2\t3\t1\t2.0451774361726\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t33\t298.089447021484\t615103.03125\t46.7461948574399\t2.41829528591792\t2\t3\t1\t50.8336114764351\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t37\t323.121139526367\t466568.765625\t35.124074361307\t5.76627180005697\t2\t3\t1\t38.5174674683979\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t38\t351.116027832031\t196796\t14.4713765828471\t13.9377176954859\t2\t3\t1\t16.2043276570534\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t42\t369.126586914062\t886075.9375\t66.4220677147626\t7.26146802670602\t2\t3\t1\t73.115078488413\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t43\t452.164505004883\t53825.01953125\t3.88832411210861\t19.9950031764456\t2\t3\t1\t4.42345286505057\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t44\t480.157821655273\t18973.7768554688\t1.53577680008656\t20.7135148582833\t2\t3\t1\t1.57953394860321\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"840"\t45\t498.169281005859\t1157278.375\t58.5854206302271\t85.2678409874478\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t1\t110.034912109375\t5403.05908203125\t0.126823062941211\tNA\t1\t2\t1\t0.281201446822678\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t2\t118.086486816406\t5748.27075195312\t0.706037087693894\t32.0932107785929\t2\t2\t1\t0.295579765803894\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t3\t119.035583496094\t4770.26611328125\t0.88453483152334\tNA\t1\t2\t1\t0.243413958898567\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t4\t137.045799255371\t1940576.6875\t204.243745768474\t1.39610721548048\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t5\t143.80290222168\t3752.88916015625\t0.695885953146795\tNA\t1\t2\t1\t0.19149992601834\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t6\t185.164245605469\t6015.66552734375\t1.11546516847666\tNA\t1\t2\t1\t0.306963369893248\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t7\t188.177719116211\t3627.47534179688\t0.672630879308387\tNA\t1\t2\t1\t0.18510039330832\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t8\t231.170310974121\t77430.171875\t7.89538914874127\t4.33417858681684\t2\t2\t1\t3.99165607949787\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n+"843"\t9\t473.909973144531\t4030.2705078125\t0.747319868528105\tNA\t1\t2\t1\t0.205653956496775\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"all"\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/averageFragSpectra_output_inter.RData
b
Binary file test-data/averageFragSpectra_output_inter.RData has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/averageFragSpectra_output_inter.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/averageFragSpectra_output_inter.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,5615 @@\n+"grpid"\t"fileid"\t"filename"\t"cl"\t"mz"\t"i"\t"snr"\t"rsd"\t"count"\t"total"\t"inPurity"\t"ra"\t"frac"\t"snr_pass_flag"\t"minnum_pass_flag"\t"minfrac_pass_flag"\t"ra_pass_flag"\t"pass_flag"\t"method"\t"avid"\n+"12"\t"1"\t"LCMSMS_2.mzML"\t1\t112.050888061523\t440629.6875\t1\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t1\n+"12"\t"2"\t"LCMSMS_1.mzML"\t1\t112.050880432129\t565117.25\t1.99119365130368\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t2\n+"12"\t"2"\t"LCMSMS_1.mzML"\t2\t126.53768157959\t2499.31469726562\t0.00880634869631973\tNA\t1\t1\t1\t0.442264803855417\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3\n+"12"\tNA\tNA\t1\t112.050884246826\t502873.46875\t1.49559682565184\t17.5046020693718\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t4\n+"12"\tNA\tNA\t2\t126.53768157959\t2499.31469726562\t0.00880634869631973\tNA\t1\t2\t1\t0.442264803855417\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5\n+"14"\t"1"\t"LCMSMS_2.mzML"\t1\t113.034782409668\t13262784\t1\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t6\n+"14"\t"2"\t"LCMSMS_1.mzML"\t1\t112.999992370605\t67035.0703125\t0.0166921251649536\tNA\t1\t1\t1\t0.84163055956917\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7\n+"14"\t"2"\t"LCMSMS_1.mzML"\t2\t113.034805297852\t7964904.5\t1.98330787483505\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t8\n+"14"\tNA\tNA\t1\t112.999992370605\t67035.0703125\t0.0166921251649536\tNA\t1\t2\t1\t0.84163055956917\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t9\n+"14"\tNA\tNA\t2\t113.03479385376\t10613844.25\t1.49165393741752\t35.2950960285591\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t10\n+"17"\t"1"\t"LCMSMS_2.mzML"\t2\t116.016784667969\t5682.14404296875\t1\t71.4606063273013\t3\t3\t1\t3.81632335062543\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t11\n+"17"\t"1"\t"LCMSMS_2.mzML"\t3\t116.070899963379\t149471.265625\t24.7461349458028\t141.620390523092\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t12\n+"17"\t"1"\t"LCMSMS_2.mzML"\t4\t116.10725402832\t6152.61499023438\t0.790986039739247\t50.735778159677\t2\t3\t0.975316120547933\t4.81700933424858\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t13\n+"17"\t"2"\t"LCMSMS_1.mzML"\t2\t116.016510009766\t3662.43212890625\t0.738786583000151\t29.8076183488603\t2\t3\t0.994688094344781\t2.77138370920908\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t14\n+"17"\t"2"\t"LCMSMS_1.mzML"\t3\t116.070892333984\t165623.640625\t14.5635358356945\t140.530871323806\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t15\n+"17"\t"2"\t"LCMSMS_1.mzML"\t4\t116.107261657715\t6898.55065917969\t0.956173791148399\t91.7164137067514\t2\t3\t0.994688094344781\t4.63500954068241\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t16\n+"17"\tNA\tNA\t1\t116.016647338867\t4672.2880859375\t0.869393291500075\t30.5664369193171\t2\t2\t0.99734404717239\t3.29385352991726\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t17\n+"17"\tNA\tNA\t2\t116.070896148682\t157547.453125\t19.6548353907486\t7.24953254922258\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t18\n+"17"\tNA\tNA\t3\t116.107257843018\t6525.58282470703\t0.873579915443823\t8.08289748224649\t2\t2\t0.985002107446357\t4.7260094374655\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t19\n+"41"\t"1"\t"LCMSMS_2.mzML"\t3\t132.102035522461\t273406.25\t1.94054572396439\t152.255466714338\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t20\n+"41"\t"2"\t"LCMSMS_1.mzML"\t3\t132.102035522461\t402822.6875\t1.93538926476893\t141.682336268814\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t21\n+"41"\tNA\tNA\t1\t132.102035522461\t338114.46875\t1.93796749436666\t27.0651655019584\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t22\n+"47"\t"1"\t"LCMSMS_2.mzML"\t1\t104.860054016113\t30638.400390625\t0.416467577099884\tNA\t1\t2\t1\t0.0925886204295279\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t23\n+"47"\t"1"\t"LCMSMS_2.mzML"\t2\t110.028198242188\t67928.296875\t0.923348897310881\tNA\t1\t2\t1\t0.205277926249314\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t24\n+"47"\t"1"\t"LCMSMS_2.mzML"\t3\t110.035266876221\t733295.444335938\t15.4010441134192\t136.514245052138\t2\t2\t1\t4.20883163203569\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t25\n+"47"\t"1"\t"LCMSMS_2.mzML"\t4\t110.559509277344\t33952.66015625\t0.461518288523181\tNA\t1\t2\t1\t0.102604245773278\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t26\n+"47"\t"1"\t"LCMSMS_2.mzML"\t5\t112.050758361816\t37811.4998779297\t0.952942592809956\t133.732740851463\t2\t2\t1'..b'3765828471\t13.9377176954859\t2\t2\t1\t16.2043276570534\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5586\n+"840"\tNA\tNA\t39\t368.141418457031\t7687.5947265625\t0.820612057302867\tNA\t1\t2\t1\t0.66428224121638\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5587\n+"840"\tNA\tNA\t40\t368.143646240234\t8117.44580078125\t0.375704604512976\tNA\t1\t2\t1\t0.641293687868704\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5588\n+"840"\tNA\tNA\t41\t369.124267578125\t5257.81591796875\t1.33571892810362\tNA\t1\t2\t1\t35.095694698422\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5589\n+"840"\tNA\tNA\t42\t369.126586914062\t886075.9375\t66.4220677147626\t7.26146802670602\t2\t2\t1\t73.115078488413\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5590\n+"840"\tNA\tNA\t43\t452.164505004883\t53825.01953125\t3.88832411210861\t19.9950031764456\t2\t2\t1\t4.42345286505057\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5591\n+"840"\tNA\tNA\t44\t480.157821655273\t18973.7768554688\t1.53577680008656\t20.7135148582833\t2\t2\t1\t1.57953394860321\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5592\n+"840"\tNA\tNA\t45\t498.169242858887\t898832.592529297\t77.364660493474\t40.663582267271\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5593\n+"843"\t"1"\t"LCMSMS_2.mzML"\t1\t118.086380004883\t7052.74462890625\t1.30776735174961\tNA\t1\t1\t1\t0.359882750868549\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5594\n+"843"\t"1"\t"LCMSMS_2.mzML"\t2\t119.035583496094\t4770.26611328125\t0.88453483152334\tNA\t1\t1\t1\t0.243413958898567\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5595\n+"843"\t"1"\t"LCMSMS_2.mzML"\t3\t137.045806884766\t1959734\t363.387061089596\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5596\n+"843"\t"1"\t"LCMSMS_2.mzML"\t4\t143.80290222168\t3752.88916015625\t0.695885953146795\tNA\t1\t1\t1\t0.19149992601834\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5597\n+"843"\t"1"\t"LCMSMS_2.mzML"\t5\t185.164245605469\t6015.66552734375\t1.11546516847666\tNA\t1\t1\t1\t0.306963369893248\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5598\n+"843"\t"1"\t"LCMSMS_2.mzML"\t6\t188.177719116211\t3627.47534179688\t0.672630879308387\tNA\t1\t1\t1\t0.18510039330832\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5599\n+"843"\t"1"\t"LCMSMS_2.mzML"\t7\t231.17024230957\t75057.1484375\t13.9176013604237\tNA\t1\t1\t1\t3.82996612996968\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5600\n+"843"\t"1"\t"LCMSMS_2.mzML"\t8\t473.909973144531\t4030.2705078125\t0.747319868528105\tNA\t1\t1\t1\t0.205653956496775\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5601\n+"843"\t"2"\t"LCMSMS_1.mzML"\t1\t110.034912109375\t5403.05908203125\t0.126823062941211\tNA\t1\t1\t1\t0.281201446822678\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5602\n+"843"\t"2"\t"LCMSMS_1.mzML"\t2\t118.08659362793\t4443.796875\t0.104306823638177\tNA\t1\t1\t1\t0.231276780739239\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5603\n+"843"\t"2"\t"LCMSMS_1.mzML"\t3\t137.045791625977\t1921419.375\t45.1004304473527\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5604\n+"843"\t"2"\t"LCMSMS_1.mzML"\t4\t231.170379638672\t79803.1953125\t1.87317693705879\tNA\t1\t1\t1\t4.15334602902607\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5605\n+"843"\tNA\tNA\t1\t110.034912109375\t5403.05908203125\t0.126823062941211\tNA\t1\t2\t1\t0.281201446822678\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5606\n+"843"\tNA\tNA\t2\t118.086486816406\t5748.27075195312\t0.706037087693894\t32.0932107785929\t2\t2\t1\t0.295579765803894\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5607\n+"843"\tNA\tNA\t3\t119.035583496094\t4770.26611328125\t0.88453483152334\tNA\t1\t2\t1\t0.243413958898567\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5608\n+"843"\tNA\tNA\t4\t137.045799255371\t1940576.6875\t204.243745768474\t1.39610721548048\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5609\n+"843"\tNA\tNA\t5\t143.80290222168\t3752.88916015625\t0.695885953146795\tNA\t1\t2\t1\t0.19149992601834\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5610\n+"843"\tNA\tNA\t6\t185.164245605469\t6015.66552734375\t1.11546516847666\tNA\t1\t2\t1\t0.306963369893248\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5611\n+"843"\tNA\tNA\t7\t188.177719116211\t3627.47534179688\t0.672630879308387\tNA\t1\t2\t1\t0.18510039330832\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5612\n+"843"\tNA\tNA\t8\t231.170310974121\t77430.171875\t7.89538914874127\t4.33417858681684\t2\t2\t1\t3.99165607949787\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5613\n+"843"\tNA\tNA\t9\t473.909973144531\t4030.2705078125\t0.747319868528105\tNA\t1\t2\t1\t0.205653956496775\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"inter"\t5614\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/averageFragSpectra_output_intra.RData
b
Binary file test-data/averageFragSpectra_output_intra.RData has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/averageFragSpectra_output_intra.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/averageFragSpectra_output_intra.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,3225 @@\n+"grpid"\t"fileid"\t"filename"\t"cl"\t"mz"\t"i"\t"snr"\t"rsd"\t"count"\t"total"\t"inPurity"\t"ra"\t"frac"\t"snr_pass_flag"\t"minnum_pass_flag"\t"minfrac_pass_flag"\t"ra_pass_flag"\t"pass_flag"\t"method"\t"avid"\n+"12"\t"1"\t"LCMSMS_2.mzML"\t1\t112.050888061523\t440629.6875\t1\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t1\n+"12"\t"2"\t"LCMSMS_1.mzML"\t1\t112.050880432129\t565117.25\t1.99119365130368\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t2\n+"12"\t"2"\t"LCMSMS_1.mzML"\t2\t126.53768157959\t2499.31469726562\t0.00880634869631973\tNA\t1\t1\t1\t0.442264803855417\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3\n+"14"\t"1"\t"LCMSMS_2.mzML"\t1\t113.034782409668\t13262784\t1\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t4\n+"14"\t"2"\t"LCMSMS_1.mzML"\t1\t112.999992370605\t67035.0703125\t0.0166921251649536\tNA\t1\t1\t1\t0.84163055956917\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t5\n+"14"\t"2"\t"LCMSMS_1.mzML"\t2\t113.034805297852\t7964904.5\t1.98330787483505\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t6\n+"17"\t"1"\t"LCMSMS_2.mzML"\t2\t116.016784667969\t5682.14404296875\t1\t71.4606063273013\t3\t3\t1\t3.81632335062543\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t7\n+"17"\t"1"\t"LCMSMS_2.mzML"\t3\t116.070899963379\t149471.265625\t24.7461349458028\t141.620390523092\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t8\n+"17"\t"1"\t"LCMSMS_2.mzML"\t4\t116.10725402832\t6152.61499023438\t0.790986039739247\t50.735778159677\t2\t3\t0.975316120547933\t4.81700933424858\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t9\n+"17"\t"2"\t"LCMSMS_1.mzML"\t2\t116.016510009766\t3662.43212890625\t0.738786583000151\t29.8076183488603\t2\t3\t0.994688094344781\t2.77138370920908\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t10\n+"17"\t"2"\t"LCMSMS_1.mzML"\t3\t116.070892333984\t165623.640625\t14.5635358356945\t140.530871323806\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t11\n+"17"\t"2"\t"LCMSMS_1.mzML"\t4\t116.107261657715\t6898.55065917969\t0.956173791148399\t91.7164137067514\t2\t3\t0.994688094344781\t4.63500954068241\t0.666666666666667\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t12\n+"41"\t"1"\t"LCMSMS_2.mzML"\t3\t132.102035522461\t273406.25\t1.94054572396439\t152.255466714338\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t13\n+"41"\t"2"\t"LCMSMS_1.mzML"\t3\t132.102035522461\t402822.6875\t1.93538926476893\t141.682336268814\t3\t3\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t14\n+"47"\t"1"\t"LCMSMS_2.mzML"\t1\t104.860054016113\t30638.400390625\t0.416467577099884\tNA\t1\t2\t1\t0.0925886204295279\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t15\n+"47"\t"1"\t"LCMSMS_2.mzML"\t2\t110.028198242188\t67928.296875\t0.923348897310881\tNA\t1\t2\t1\t0.205277926249314\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t16\n+"47"\t"1"\t"LCMSMS_2.mzML"\t3\t110.035266876221\t733295.444335938\t15.4010441134192\t136.514245052138\t2\t2\t1\t4.20883163203569\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t17\n+"47"\t"1"\t"LCMSMS_2.mzML"\t4\t110.559509277344\t33952.66015625\t0.461518288523181\tNA\t1\t2\t1\t0.102604245773278\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t18\n+"47"\t"1"\t"LCMSMS_2.mzML"\t5\t112.050758361816\t37811.4998779297\t0.952942592809956\t133.732740851463\t2\t2\t1\t0.275269675890879\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t19\n+"47"\t"1"\t"LCMSMS_2.mzML"\t6\t119.035530090332\t552159.596679688\t11.6096452941789\t136.498762407513\t2\t2\t1\t3.17391657883486\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t20\n+"47"\t"1"\t"LCMSMS_2.mzML"\t7\t127.993309020996\t1960.09631347656\t0.863760870096131\tNA\t1\t2\t1\t0.312957948098884\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t21\n+"47"\t"1"\t"LCMSMS_2.mzML"\t8\t128.045852661133\t75962.28125\t1.03255479463111\tNA\t1\t2\t1\t0.229556462998942\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t22\n+"47"\t"1"\t"LCMSMS_2.mzML"\t9\t136.124038696289\t2269.25805664062\t1\tNA\t1\t2\t1\t0.362320126939825\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t23\n+"47"\t"1"\t"LCMSMS_2.mzML"\t10\t137.045845031738\t16858602.5\t362.901649844943\t136.167419329487\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t24\n+"47"\t"1"\t"LCMSMS_2.mzML"\t11\t138.030548095703\t43127.65234375\t0.586233897612476\tNA\t1\t2\t1\t0.130330884836075\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t25\n+"47"\t"1"\t"LCMSMS_2.mzML"\t12\t154.112442016602\t2006.76232910156\t0.884325307661281\tNA\t1\t2\t1\t0.320408857727935\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t26\n+"47"\t"2"\t"LCMSMS_'..b'65625\t0.219777962570671\tNA\t1\t2\t1\t0.375141050804842\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3197\n+"840"\t"2"\t"LCMSMS_1.mzML"\t19\t244.78190612793\t4454.5654296875\t1.13165760341194\tNA\t1\t2\t1\t29.7340323004033\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3198\n+"840"\t"2"\t"LCMSMS_1.mzML"\t20\t276.721008300781\t3612.77392578125\t0.917805147786449\tNA\t1\t2\t1\t24.1151102837815\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3199\n+"840"\t"2"\t"LCMSMS_1.mzML"\t21\t279.094757080078\t26303.89453125\t1.21743890067775\tNA\t1\t2\t1\t2.07805779591793\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3200\n+"840"\t"2"\t"LCMSMS_1.mzML"\t22\t296.157531738281\t4649.9521484375\t1.18129451398587\tNA\t1\t2\t1\t31.0382302290416\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3201\n+"840"\t"2"\t"LCMSMS_1.mzML"\t23\t298.089416503906\t625621.25\t28.9560029194826\tNA\t1\t2\t1\t49.4252710111\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3202\n+"840"\t"2"\t"LCMSMS_1.mzML"\t24\t308.5830078125\t4018.92358398438\t1.02098521239288\tNA\t1\t2\t1\t26.8261417517056\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3203\n+"840"\t"2"\t"LCMSMS_1.mzML"\t25\t311.841857910156\t3540.38208007812\t0.899414401504221\tNA\t1\t2\t1\t23.6318978330052\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3204\n+"840"\t"2"\t"LCMSMS_1.mzML"\t26\t323.121215820312\t485592.5\t22.4749684376592\tNA\t1\t2\t1\t38.3627329050245\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3205\n+"840"\t"2"\t"LCMSMS_1.mzML"\t27\t351.116119384766\t216191.140625\t10.0061040111789\tNA\t1\t2\t1\t17.0795121099059\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3206\n+"840"\t"2"\t"LCMSMS_1.mzML"\t28\t368.143646240234\t8117.44580078125\t0.375704604512976\tNA\t1\t2\t1\t0.641293687868704\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3207\n+"840"\t"2"\t"LCMSMS_1.mzML"\t29\t369.124267578125\t5257.81591796875\t1.33571892810362\tNA\t1\t2\t1\t35.095694698422\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3208\n+"840"\t"2"\t"LCMSMS_1.mzML"\t30\t369.126617431641\t931572.6875\t43.1165364970584\tNA\t1\t2\t1\t73.5960176324353\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3209\n+"840"\t"2"\t"LCMSMS_1.mzML"\t31\t452.164489746094\t61435.125\t2.84343867612998\tNA\t1\t2\t1\t4.85349195335964\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3210\n+"840"\t"2"\t"LCMSMS_1.mzML"\t32\t480.157287597656\t16194.7509765625\t0.749551356443915\tNA\t1\t2\t1\t1.27941618986548\t0.5\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3211\n+"840"\t"2"\t"LCMSMS_1.mzML"\t33\t498.169326782227\t640386.810058594\t31.1956772453617\t138.112909456415\t2\t2\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3212\n+"843"\t"1"\t"LCMSMS_2.mzML"\t1\t118.086380004883\t7052.74462890625\t1.30776735174961\tNA\t1\t1\t1\t0.359882750868549\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3213\n+"843"\t"1"\t"LCMSMS_2.mzML"\t2\t119.035583496094\t4770.26611328125\t0.88453483152334\tNA\t1\t1\t1\t0.243413958898567\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3214\n+"843"\t"1"\t"LCMSMS_2.mzML"\t3\t137.045806884766\t1959734\t363.387061089596\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3215\n+"843"\t"1"\t"LCMSMS_2.mzML"\t4\t143.80290222168\t3752.88916015625\t0.695885953146795\tNA\t1\t1\t1\t0.19149992601834\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3216\n+"843"\t"1"\t"LCMSMS_2.mzML"\t5\t185.164245605469\t6015.66552734375\t1.11546516847666\tNA\t1\t1\t1\t0.306963369893248\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3217\n+"843"\t"1"\t"LCMSMS_2.mzML"\t6\t188.177719116211\t3627.47534179688\t0.672630879308387\tNA\t1\t1\t1\t0.18510039330832\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3218\n+"843"\t"1"\t"LCMSMS_2.mzML"\t7\t231.17024230957\t75057.1484375\t13.9176013604237\tNA\t1\t1\t1\t3.82996612996968\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3219\n+"843"\t"1"\t"LCMSMS_2.mzML"\t8\t473.909973144531\t4030.2705078125\t0.747319868528105\tNA\t1\t1\t1\t0.205653956496775\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3220\n+"843"\t"2"\t"LCMSMS_1.mzML"\t1\t110.034912109375\t5403.05908203125\t0.126823062941211\tNA\t1\t1\t1\t0.281201446822678\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3221\n+"843"\t"2"\t"LCMSMS_1.mzML"\t2\t118.08659362793\t4443.796875\t0.104306823638177\tNA\t1\t1\t1\t0.231276780739239\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3222\n+"843"\t"2"\t"LCMSMS_1.mzML"\t3\t137.045791625977\t1921419.375\t45.1004304473527\tNA\t1\t1\t1\t100\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3223\n+"843"\t"2"\t"LCMSMS_1.mzML"\t4\t231.170379638672\t79803.1953125\t1.87317693705879\tNA\t1\t1\t1\t4.15334602902607\t1\tTRUE\tTRUE\tTRUE\tTRUE\tTRUE\t"intra"\t3224\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/combineAnnotations_combined_annotations.sqlite
b
Binary file test-data/combineAnnotations_combined_annotations.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/combineAnnotations_combined_annotations.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/combineAnnotations_combined_annotations.tsv Wed Nov 27 14:23:10 2019 -0500
[
b'@@ -0,0 +1,107 @@\n+"grpid"\t"grp_name"\t"mz"\t"rt"\t"inchikey"\t"inchi"\t"inchikey..7"\t"inchikey1"\t"inchikey2"\t"inchikey3"\t"name"\t"exact_mass"\t"molecular_formula"\t"pubchem_cids"\t"kegg_cids"\t"kegg_brite"\t"kegg_drugs"\t"hmdb_ids"\t"hmdb_bio_custom_flag"\t"hmdb_drug_flag"\t"biosim_max_count"\t"biosim_hmdb_ids"\t"fragmentation_acquistion_num"\t"mean_precursor_ion_purity"\t"accession"\t"sirius_score"\t"sirius_wscore"\t"metfrag_score"\t"metfrag_wscore"\t"sm_score"\t"sm_wscore"\t"probmetab_score"\t"probmetab_wscore"\t"ms1_lookup_score"\t"ms1_lookup_wscore"\t"biosim_max_score"\t"biosim_wscore"\t"wscore"\t"rank"\t"adduct_overall"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-UHFFFAOYSA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)"\t"ONIBWKKTOPOVIA-UHFFFAOYSA-N"\t"ONIBWKKTOPOVIA"\t"UHFFFAOYSA"\t"N"\t"DL-Proline"\t115.063328534\t"C5H9NO2"\t"614,25246272"\t"C16435"\t""\t""\t""\t""\t""\t33\t"HMDB0000162"\t"277,343,409,410"\t0.99\t"CCMSLIB00000577898"\t"1.0"\t0.2\t0.9\t0.18\t0.87867085623127\t0.263601256869381\t"0"\t0\t0\t0\t1\t0.25\t0.893601256869381\t1\t"[M+H]+,M+H"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-AZXPZELESA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i4+1"\t"ONIBWKKTOPOVIA-AZXPZELESA-N"\t"ONIBWKKTOPOVIA"\t"AZXPZELESA"\t"N"\t""\t116.066683369\t"C5H9NO2"\t"10290769"\t""\t""\t""\t""\t""\t""\t33\t"HMDB0000162"\t"277,343,409,410"\t0.99\tNA\t"1.0"\t0.2\t0\t0\t0\t0\t"0"\t0\t0\t0\t1\t0.25\t0.45\t2\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-BYPYZUCNSA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1"\t"ONIBWKKTOPOVIA-BYPYZUCNSA-N"\t"ONIBWKKTOPOVIA"\t"BYPYZUCNSA"\t"N"\t"L-Pro"\t115.063328534\t"C5H9NO2"\t"145742,6971047"\t"C00148"\t"Compounds with biological roles [BR:br08001]"\t"D00035"\t"HMDB0000162"\t"True"\t"False"\t33\t"HMDB0000162"\t"277,343,409,410"\t0.99\tNA\t"1.0"\t0.2\t0\t0\t0\t0\t"0"\t0\t0\t0\t1\t0.25\t0.45\t2\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-GIZBTRSZSA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+2,2+2,3+2,4+2,5+2"\t"ONIBWKKTOPOVIA-GIZBTRSZSA-N"\t"ONIBWKKTOPOVIA"\t"GIZBTRSZSA"\t"N"\t"L-PROLINE, [U-14C]"\t125.0795385\t"C5H9NO2"\t"12210869"\t""\t""\t""\t""\t""\t""\t33\t"HMDB0000162"\t"277,343,409,410"\t0.99\tNA\t"1.0"\t0.2\t0\t0\t0\t0\t"0"\t0\t0\t0\t1\t0.25\t0.45\t2\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-GTTLGWSSSA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i1+1D,4+1,6+1/t1?,4-"\t"ONIBWKKTOPOVIA-GTTLGWSSSA-N"\t"ONIBWKKTOPOVIA"\t"GTTLGWSSSA"\t"N"\t"SCHEMBL16945363"\t119.07334984\t"C5H9NO2"\t"118264374"\t""\t""\t""\t""\t""\t""\t33\t"HMDB0000162"\t"277,343,409,410"\t0.99\tNA\t"1.0"\t0.2\t0\t0\t0\t0\t"0"\t0\t0\t0\t1\t0.25\t0.45\t2\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-HOSYLAQJSA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i5+1"\t"ONIBWKKTOPOVIA-HOSYLAQJSA-N"\t"ONIBWKKTOPOVIA"\t"HOSYLAQJSA"\t"N"\t"DL-Proline-1-13C"\t116.066683369\t"C5H9NO2"\t"59340910"\t""\t""\t""\t""\t""\t""\t33\t"HMDB0000162"\t"277,343,409,410"\t0.99\tNA\t"1.0"\t0.2\t0\t0\t0\t0\t"0"\t0\t0\t0\t1\t0.25\t0.45\t2\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-IDEBNGHGSA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/i1+1,2+1,3+1,4+1,5+1,6+1"\t"ONIBWKKTOPOVIA-IDEBNGHGSA-N"\t"ONIBWKKTOPOVIA"\t"IDEBNGHGSA"\t"N"\t"SCHEMBL18875607"\t121.0771376\t"C5H9NO2"\t"129148531"\t""\t""\t""\t""\t""\t""\t33\t"HMDB0000162"\t"277,343,409,410"\t0.99\tNA\t"1.0"\t0.2\t0\t0\t0\t0\t"0"\t0\t0\t0\t1\t0.25\t0.45\t2\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-IXBOUXNVSA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i4+1"\t"ONIBWKKTOPOVIA-IXBOUXNVSA-N"\t"ONIBWKKTOPOVIA"\t"IXBOUXNVSA"\t"N"\t""\t116.066683369\t"C5H9NO2"\t"100915807"\t""\t""\t""\t""\t""\t""\t33\t"HMDB0000162"\t"277,343,409,410"\t0.99\tNA\t"1.0"\t0.2\t0\t0\t0\t0\t"0"\t0\t0\t0\t1\t0.25\t0.45\t2\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"ONIBWKKTOPOVIA-JGTYJTGKSA-N"\t"InChI=1S/C5H9NO2/c7-5(8)4-2-1-3-6-4/h4,6H,1-3H2,(H,7,8)/t4-/m0/s1/i6+1"\t"ONIBWKKTOPOVIA-JGTYJTGKSA-N"\t"ONIBWKKTOPOVIA"\t"JGTYJTGKSA"\t"N"\t"L-Proline-15N"\t116.06'..b'116T48"\t116.070597631071\t47.7346706134597\t"RWRDLPDLKQPQOW-HJOWPTDZSA-N"\t"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2,3D,4D2/hD"\t"RWRDLPDLKQPQOW-HJOWPTDZSA-N"\t"RWRDLPDLKQPQOW"\t"HJOWPTDZSA"\t"N"\t"pyrrolidine-d8"\t79.123713262\t"C4H9N"\t"129715569"\t""\t""\t""\t""\t""\t""\t1\t"HMDB0031641"\t"277,343,409,410"\t0.99\tNA\t"0.0"\t0\t0\t0\t0\t0\t"0"\t0\t0\t0\t0.7143\t0.178575\t0.178575\t17\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"RWRDLPDLKQPQOW-KLRAWXKOSA-N"\t"InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2/i1D2,2D2,3D2,4D2/hD"\t"RWRDLPDLKQPQOW-KLRAWXKOSA-N"\t"RWRDLPDLKQPQOW"\t"KLRAWXKOSA"\t"N"\t""\t80.12999001\t"C4H9N"\t"60135501"\t""\t""\t""\t""\t""\t""\t1\t"HMDB0031641"\t"277,343,409,410"\t0.99\tNA\t"0.0"\t0\t0\t0\t0\t0\t"0"\t0\t0\t0\t0.7143\t0.178575\t0.178575\t17\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"MWFMGBPGAXYFAR-UHFFFAOYSA-N"\t"InChI=1S/C4H7NO/c1-4(2,6)3-5/h6H,1-2H3"\t"MWFMGBPGAXYFAR-UHFFFAOYSA-N"\t"MWFMGBPGAXYFAR"\t"UHFFFAOYSA"\t"N"\t"ACETONE CYANOHYDRIN"\t85.05276385\t"C4H7NO"\t"6406"\t"C02659"\t""\t""\t"HMDB0060427"\t"False"\t"False"\t0\t"HMDB0031456"\t"277,343,409,410"\t0.99\tNA\t"0"\t0\t0\t0\t0\t0\t"0"\t0\t0\t0\t0.6923\t0.173075\t0.173075\t18\t"[M+H]+"\n+12\t"M116T48"\t116.070597631071\t47.7346706134597\t"RRUDCFGSUDOHDG-UHFFFAOYSA-N"\t"InChI=1S/C2H5NO2/c1-2(4)3-5/h5H,1H3,(H,3,4)"\t"RRUDCFGSUDOHDG-UHFFFAOYSA-N"\t"RRUDCFGSUDOHDG"\t"UHFFFAOYSA"\t"N"\t"acetohydroxamic acid"\t75.032028405\t"C2H5NO2"\t"1990"\t"C06808"\t"Anatomical Therapeutic Chemical (ATC) classification [BR:br08303]"\t"D00220"\t"HMDB0014691"\t"False"\t"True"\t0\t"HMDB0003338"\t"277,343,409,410"\t0.99\tNA\t"0"\t0\t0\t0\t0\t0\t"0"\t0\t0\t0\t0.5455\t0.136375\t0.136375\t19\t"[M+H]+"\n+14\t"M118T48"\t118.086386443874\t48.4842492312617\t"XYLMUPLGERFSHI-UHFFFAOYSA-N"\t"InChI=1S/C9H10/c1-8(2)9-6-4-3-5-7-9/h3-7H,1H2,2H3"\t"XYLMUPLGERFSHI-UHFFFAOYSA-N"\t"XYLMUPLGERFSHI"\t"UHFFFAOYSA"\t"N"\t"alpha-Methylstyrene"\t118.078250322\t"C9H10"\t"7407"\t"C14395"\t"Carcinogens [BR:br08008]"\t""\t"HMDB0059899"\t"False"\t"False"\t6\t"HMDB0029641"\tNA\tNA\tNA\t"0"\t0\t0\t0\t0\t0\t"0.512"\t0\t0\t0\t0.8889\t0.222225\t0.222225\t1\t""\n+17\t"M121T41"\t120.96735318119\t41.0233512693484\t"PVNIIMVLHYAWGP-UHFFFAOYSA-N"\t"InChI=1S/C6H5NO2/c8-6(9)5-2-1-3-7-4-5/h1-4H,(H,8,9)"\t"PVNIIMVLHYAWGP-UHFFFAOYSA-N"\t"PVNIIMVLHYAWGP"\t"UHFFFAOYSA"\t"N"\t"SCHEMBL16147135"\t123.032028405\t"C6H5NO2"\t"938,117629482"\t"C00253"\t"Compounds with biological roles [BR:br08001]"\t"D00049"\t"HMDB0001488"\t"True"\t"True"\t6\t"HMDB0001488"\tNA\tNA\tNA\t"0"\t0\t0\t0\t0\t0\t"0.283"\t0\t0\t0\t1\t0.25\t0.25\t1\t""\n+17\t"M121T41"\t120.96735318119\t41.0233512693484\t"SIOXPEMLGUPBBT-UHFFFAOYSA-N"\t"InChI=1S/C6H5NO2/c8-6(9)5-3-1-2-4-7-5/h1-4H,(H,8,9)"\t"SIOXPEMLGUPBBT-UHFFFAOYSA-N"\t"SIOXPEMLGUPBBT"\t"UHFFFAOYSA"\t"N"\t"picolinic acid"\t123.032028405\t"C6H5NO2"\t"1018"\t"C10164"\t"Phytochemical compounds [BR:br08003]"\t""\t"HMDB0002243"\t"True"\t"False"\t6\t"HMDB0002243"\tNA\tNA\tNA\t"0"\t0\t0\t0\t0\t0\t"0.24"\t0\t0\t0\t1\t0.25\t0.25\t1\t""\n+17\t"M121T41"\t120.96735318119\t41.0233512693484\t"TWBYWOBDOCUKOW-UHFFFAOYSA-N"\t"InChI=1S/C6H5NO2/c8-6(9)5-1-3-7-4-2-5/h1-4H,(H,8,9)"\t"TWBYWOBDOCUKOW-UHFFFAOYSA-N"\t"TWBYWOBDOCUKOW"\t"UHFFFAOYSA"\t"N"\t"ISONICOTINIC ACID"\t123.032028405\t"C6H5NO2"\t"5922"\t"C07446"\t""\t""\t"HMDB0060665"\t"False"\t"False"\t7\t"HMDB0001488"\tNA\tNA\tNA\t"0"\t0\t0\t0\t0\t0\t"0.235"\t0\t0\t0\t0.9333\t0.233325\t0.233325\t2\t""\n+17\t"M121T41"\t120.96735318119\t41.0233512693484\t"LQNUZADURLCDLV-UHFFFAOYSA-N"\t"InChI=1S/C6H5NO2/c8-7(9)6-4-2-1-3-5-6/h1-5H"\t"LQNUZADURLCDLV-UHFFFAOYSA-N"\t"LQNUZADURLCDLV"\t"UHFFFAOYSA"\t"N"\t"NITROBENZENE"\t123.032028405\t"C6H5NO2"\t"7416"\t"C06813"\t"Carcinogens [BR:br08008]"\t""\t"HMDB0041950"\t"False"\t"False"\t2\t"HMDB0001232"\tNA\tNA\tNA\t"0"\t0\t0\t0\t0\t0\t"0.242"\t0\t0\t0\t0.7667\t0.191675\t0.191675\t3\t""\n+27\t"M132T74"\t132.101827517612\t73.554846736017\t"AGPKZVBTJJNPAG-UHFFFAOYSA-N"\t"InChI=1S/C6H13NO2/c1-3-4(2)5(7)6(8)9/h4-5H,3,7H2,1-2H3,(H,8,9)"\t"AGPKZVBTJJNPAG-UHFFFAOYSA-N"\t"AGPKZVBTJJNPAG"\t"UHFFFAOYSA"\t"N"\t"2-ammonio-3-methylpentanoate"\t131.09462866\t"C6H13NO2"\t"791,57397079"\t"C16434"\t""\t""\t"HMDB0033923"\t"True"\t"False"\t18\t"HMDB0000172"\t"478,547,616,475,541,607"\t1\t"CE000616"\t"0"\t0\t0\t0\t0.940890528192141\t0.282267158457642\t"0"\t0\t0\t0\t1\t0.25\t0.532267158457642\t1\t"[M+H]+"\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/combineAnnotations_input_beams.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/combineAnnotations_input_beams.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,7 @@
+name mz rt intensity exact_mass ppm_error adduct C H N O P S molecular_formula compound_name compound_id
+M116T48 116.070798346478 48.102596282959 111060511.65675 116.070605 -1.66576609124689 [M+H]+ 5 9 1 2 0 0 C5H9NO2 L-Proline HMDB0000162
+M116T48 116.070798346478 48.102596282959 111060511.65675 116.070605 -1.66576609124689 [M+H]+ 5 9 1 2 0 0 C5H9NO2 Phosphorus HMDB0001315
+M116T48 116.070798346478 48.102596282959 111060511.65675 116.070605 -1.66576609124689 [M+H]+ 5 9 1 2 0 0 C5H9NO2 D-Proline HMDB0003411
+M116T48 116.070798346478 48.102596282959 111060511.65675 116.070605 -1.66576609124689 [M+H]+ 5 9 1 2 0 0 C5H9NO2 Acetamidopropanal HMDB0012880
+M116T48 116.070798346478 48.102596282959 111060511.65675 116.070605 -1.66576609124689 [M+H]+ 5 9 1 2 0 0 C5H9NO2 4-Amino-2-methylenebutanoic acid HMDB0030409
+M116T48 116.070798346478 48.102596282959 111060511.65675 116.070605 -1.66576609124689 [M+H]+ 5 9 1 2 0 0 C5H9NO2 Pterolactam HMDB0034208
b
diff -r 000000000000 -r ab65999a5430 test-data/combineAnnotations_input_metfrag.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/combineAnnotations_input_metfrag.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,8 @@
+grpid adduct CompoundName ExplPeaks FormulasOfExplPeaks FragmenterScore FragmenterScore_Values Identifier InChI InChIKey InChIKey1 InChIKey2 InChIKey3 MaximumTreeDepth MolecularFormula MonoisotopicMass Name NoExplPeaks NumberPeaksUsed SMILES Score
+12 [M+H]+ NA NA 0 NA HMDB0060427 InChI=1S/C4H7NO/c1-4(2,6)3-5/h6H,1-2H3 MWFMGBPGAXYFAR-UHFFFAOYSA-N MWFMGBPGAXYFAR UHFFFAOYSA N 2 C4H7NO 85.05276385 Acetone cyanohydrin 0 3 CC(C)(O)C#N 0
+12 [M+H]+ NA NA 0 NA HMDB0002039 InChI=1S/C4H7NO/c6-4-2-1-3-5-4/h1-3H2,(H,5,6) HNJBEVLQSNELDL-UHFFFAOYSA-N HNJBEVLQSNELDL UHFFFAOYSA N 2 C4H7NO 85.05276385 2-Pyrrolidinone 0 3 O=C1CCCN1 0
+12 [M+H]+ NA NA 0 NA HMDB0000123 InChI=1S/C2H5NO2/c3-1-2(4)5/h1,3H2,(H,4,5) DHMQDGOQFOQNFH-UHFFFAOYSA-N DHMQDGOQFOQNFH UHFFFAOYSA N 2 C2H5NO2 75.03202841 Glycine 0 2 NCC(O)=O 0
+12 [M+H]+ NA NA 0 NA HMDB0014691 InChI=1S/C2H5NO2/c1-2(4)3-5/h5H,1H3,(H,3,4) RRUDCFGSUDOHDG-UHFFFAOYSA-N RRUDCFGSUDOHDG UHFFFAOYSA N 2 C2H5NO2 75.03202841 Acetohydroxamic Acid 0 2 CC(=O)NO 0
+12 [M+H]+ NA NA 0 NA HMDB0031239 InChI=1S/C2H5NO2/c1-2-5-3-4/h2H2,1H3 QQZWEECEMNQSTG-UHFFFAOYSA-N QQZWEECEMNQSTG UHFFFAOYSA N 2 C2H5NO2 75.03202841 Ethyl nitrite 0 2 CCON=O 0
+12 [M+H]+ 61.0115776062012_88.7;62.9908828735352_67.4;63.9986190795898_999.0 61.0115776062012:[C2H6S-H]+;62.9908828735352:[CH3OS]+;63.9986190795898:[CH3OS]+H+ 273.219394706017 622.0;272.0;272.0 HMDB0002151 InChI=1S/C2H6OS/c1-4(2)3/h1-2H3 IAZDPXIOMUYVGZ-UHFFFAOYSA-N IAZDPXIOMUYVGZ UHFFFAOYSA N 2 C2H6OS 78.0139355 Dimethyl sulfoxide 3 8 CS(C)=O 0.8
+12 [M+H]+ test ONIBWKKTOPOVIA-UHFFFAOYSA-N ONIBWKKTOPOVIA UHFFFAOYSA N TEST 0.9
b
diff -r 000000000000 -r ab65999a5430 test-data/combineAnnotations_input_probmetab.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/combineAnnotations_input_probmetab.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,18 @@
+name namecustom mz mzmin mzmax rt rtmin rtmax npeaks BLANK.P.WAX.2.AMD.0.LC.MS.POSITIVE ANIMAL.P.WAX.2.AMD.0.LC.MS.POSITIVE ANIMAL.P.WAX.2.AMD.0.LC.MSMS.POSITIVE isotopes adduct pcgroup propmz mpc proba
+M116T48 104.106973271895 104.106955287478 104.106991256313 359.862889 359.826504 359.899274 2 0 0 2 [2][M]+ 22 NA NA NA
+M107T71 104.107030464189 104.106984676963 104.107042846235 371.788312 370.845046 376.205158 3 0 3 0 [1][M]+ 21 NA NA NA
+M108T47 104.992236979634 104.992192750892 104.99227099396 459.515063 456.526458 463.963424 6 0 5 1 [M+Na]+ 82.003 3 NA NA NA
+M110T48 105.089907268842 105.089885488134 105.089975689328 175.613778 173.474062 181.67533 3 0 1 2 2 NA NA NA
+M111T91 105.11025140006 105.110231257297 105.110271542824 359.862889 359.826504 359.899274 2 0 0 2 [2][M+1]+ 22 NA NA NA
+M112T55 105.110283962945 105.110239712615 105.110299928917 371.788312 370.845046 376.205158 3 0 3 0 [1][M+1]+ 21 NA NA NA
+M113T41 110.034674397147 110.034639940416 110.034699261062 442.404701 436.574584 444.17666 4 0 4 0 9 NA NA NA
+M113T84 113.070745331511 113.070718897466 113.070777260971 109.38458 108.295648 113.605798 6 0 4 2 225 NA NA NA
+M115T45 113.132038869213 113.132002009919 113.132085865821 34.4908844 33.8765988 35.138902 4 0 2 2 1 NA NA NA
+M116T48 112.999616555967 112.999581977151 112.999651134783 463.493504 462.327586 464.659422 2 0 0 2 431 NA NA NA
+M117T48 116.000903341961 115.998346142218 116.000963108016 35.1889595 34.9201112 36.6416092 8 0 4 2 1 NA NA NA
+M118T48 119.085211610685 119.08252850984 119.08530671848 39.0737754 35.959209 45.9382142 16 5 5 1 1 118.077386610685 cpd:C14395;cpd:C19549 0.512;0.488
+M119T48 121.028174706077 121.028124729155 121.028217124878 35.1219624 33.876746 37.3323522 6 0 4 2 1 NA NA NA
+M120T43 121.100892266604 121.100863233399 121.100910202317 36.1032512 35.959209 37.6828536 3 0 1 2 1 NA NA NA
+M121T41 124.03919990525 124.039132829123 124.039264850136 203.05685 195.713784 207.195788 7 0 5 2 [3][M]+ 7 123.03192390525 cpd:C00253;cpd:C06813;cpd:C10164;cpd:C07446 0.283;0.242;0.24;0.235
+M121T71 124.897102002773 124.897045831144 124.897161445541 78.951638 77.505502 80.899414 7 0 5 2 286 NA NA NA
+M122T45 125.0424696643 125.036088730982 125.042510820886 203.05685 195.713784 207.195788 9 0 5 2 [3][M+1]+ 7 NA NA NA
b
diff -r 000000000000 -r ab65999a5430 test-data/combineAnnotations_input_sirus_csifingerid.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/combineAnnotations_input_sirus_csifingerid.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,3 @@
+grpid adduct inchikey2D InChI molecularFormula Rank Score Name smiles xlogp pubchemids links
+12 [M+H]+ RWRDLPDLKQPQOW InChI=1S/C4H9N/c1-2-4-5-3-1/h5H,1-4H2 C4H9N 1 -136.145462142446 Azolidine C1CCNC1 31268;3613359;11062297;12196044;12196046;12196049;12196050;18440991;20463768;53660610;57608708;57608709;57608710;57750053;60135501;90927493;91312985 HMDB:(31641);Natural Products:(UNPD154562);CHEBI:(33135 52145);HSDB:(123-75-1);Plantcyc:(PYRROLIDINE);Biocyc:(PYRROLIDINE)
+12 [M+H]+ ONIBWKKTOPOVIA TEST TEST 1 -100 TEST TEST TEST TEST TEST
b
diff -r 000000000000 -r ab65999a5430 test-data/combinedAnnotation_input_spectralMatching.sqlite
b
Binary file test-data/combinedAnnotation_input_spectralMatching.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/createDatabase_output.sqlite
b
Binary file test-data/createDatabase_output.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/createDatabase_output_eic.sqlite
b
Binary file test-data/createDatabase_output_eic.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/createMSP_input_metadata.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/createMSP_input_metadata.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,3 @@
+grpid isotope adduct AC$CHROMATOGRAPHY: COLUMN_NAME AC$MASS_SPECTROMETRY: ION_MODE AC$MASS_SPECTROMETRY: MS_TYPE CH$LINK: INCHIKEY CH$LINK: PUBCHEM CH$NAME
+8 [M+H]+ 165.078 Acclaim RSLC C18 2.2um 2.1x100mm Thermo POSITIVE MS2 VACCAVUAMIDAGB-UHFFFAOYSA-N CID:5328 SomeCompound
+12 [4][M]+ [M+NH4]+ 103.047 [M+H+NH3]+ 103.047 Acclaim RSLC C18 2.2um 2.1x100mm Thermo POSITIVE MS2 VACCAVUAMIDAGB-UHFFFAOYSA-N CID:5328 Unknown
b
diff -r 000000000000 -r ab65999a5430 test-data/createMSP_output_av_all.msp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/createMSP_output_av_all.msp Wed Nov 27 14:23:10 2019 -0500
b
b"@@ -0,0 +1,2552 @@\n+RECORD_TITLE: MZ:112.0508 | RT:67.5 | grpid:12 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050766766484\n+AC$CHROMATOGRAPHY: RETENTION_TIME 67.47903\n+XCMS groupid (grpid): 12\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.050884246826\t502873.46875\t100\n+126.53768157959\t2499.31469726562\t0.5\n+\n+RECORD_TITLE: MZ:113.0354 | RT:83.4 | grpid:14 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 113.03541992282\n+AC$CHROMATOGRAPHY: RETENTION_TIME 83.441172\n+XCMS groupid (grpid): 14\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.999992370605\t67035.0703125\t0.63\n+113.03479385376\t10613844.25\t100\n+\n+RECORD_TITLE: MZ:116.0706 | RT:47.7 | grpid:17 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070637437099\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.662548\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 3\n+PK$PEAK: m/z int. rel.int.\n+116.016609191895\t4434.369140625\t2.81\n+116.070896148682\t157547.453125\t100\n+116.107261657715\t6152.61499023438\t3.91\n+\n+RECORD_TITLE: MZ:132.1018 | RT:73.5 | grpid:41 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 132.101827805179\n+AC$CHROMATOGRAPHY: RETENTION_TIME 73.529172\n+XCMS groupid (grpid): 41\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+132.102035522461\t338114.46875\t100\n+\n+RECORD_TITLE: MZ:137.0456 | RT:127 | grpid:47 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 137.045578757527\n+AC$CHROMATOGRAPHY: RETENTION_TIME 126.956946\n+XCMS groupid (grpid): 47\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 4\n+PK$PEAK: m/z int. rel.int.\n+110.035266876221\t290341.673828125\t4.45\n+112.050743103027\t12029.1610107422\t0.18\n+119.035442352295\t200743.407226562\t3.08\n+137.045837402344\t6519742.5\t100\n+\n+RECORD_TITLE: MZ:138.0547 | RT:50.7 | grpid:48 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 138.05471057982\n+AC$CHROMATOGRAPHY: RETENTION_TIME 50.6971758\n+XCMS groupid (grpid): 48\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+110.060352325439\t34625.283203125\t7.61\n+138.054901123047\t455046.234375\t100\n+\n+RECORD_TITLE: MZ:138.0487 | RT:127 | grpid:49 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 138.048727400006\n+AC$CHROMATOGRAPHY: RETENTION_TIME 126.956946\n+XCMS groupid (grpid): 49\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 8\n+PK$PEAK: m/z int. rel.int.\n+110.035133361816\t4197.11962890625\t0.87\n+111.032066345215\t3606.22302246094\t0.75\n+111.038753509521\t22056.884765625\t4.56\n+120.031585693359\t3442.69409179688\t0.71\n+120.038921356201\t14920.083984375\t3.08\n+131.267166137695\t2650.74243164062\t0.55\n+137.396865844727\t3584.59228515625\t0.74\n+138.050010681152\t483746.53125\t100\n+\n+RECORD_TITLE: MZ:140.0678 | RT:46.2 | grpid:51 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 140.067802644286\n+AC$CHROMATOGRAPHY: RETENTION_TIME 46.161033\n+XCMS groupid (grpid): 51\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 4\n+PK$PEAK: m/z int. rel.int.\n+108.959754943848\t2408.8056640625\t0.05\n+114.089179992676\t568595.515625\t10.75\n+140.06812286377\t5286829.375\t100\n+143.032638549805\t2735.88037109375\t0.05\n+\n+RECORD_TITLE: MZ:146.1174 | RT:46.2 | grpid:62 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 146.117395027245\n+AC$CHROMATOGRAPHY: RETENTION_TIME"..b"ethod 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 7\n+PK$PEAK: m/z int. rel.int.\n+103.690208435059\t5716.66162109375\t0.05\n+112.050846099854\t11784687\t100\n+174.621200561523\t5244.80419921875\t0.04\n+200.266555786133\t5990.37744140625\t0.05\n+244.092681884766\t114135.3828125\t0.97\n+294.906677246094\t6473.75732421875\t0.05\n+448.8837890625\t6051.86181640625\t0.05\n+\n+RECORD_TITLE: MZ:494.1968 | RT:49.9 | grpid:830 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 494.196757645669\n+AC$CHROMATOGRAPHY: RETENTION_TIME 49.9356528\n+XCMS groupid (grpid): 830\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 43\n+PK$PEAK: m/z int. rel.int.\n+101.02392578125\t4665.49853515625\t0.46\n+102.055374145508\t147275.96875\t14.46\n+102.392883300781\t3496.21337890625\t0.34\n+108.04434967041\t4591.63720703125\t0.45\n+108.044906616211\t7338.142578125\t0.72\n+109.028678894043\t35977.96484375\t3.53\n+110.060516357422\t4515.4990234375\t0.44\n+112.050483703613\t5202.08544921875\t0.51\n+114.055294036865\t8047.6591796875\t0.79\n+116.070938110352\t148026.921875\t14.53\n+126.055130004883\t383223.53125\t37.62\n+127.039051055908\t19638.7255859375\t1.93\n+130.049903869629\t124625.0859375\t12.23\n+131.064346313477\t4367.2939453125\t0.43\n+133.538024902344\t3557.1923828125\t0.35\n+134.355972290039\t4310.93603515625\t0.42\n+136.169921875\t4170.79638671875\t0.41\n+138.054985046387\t1018626.90625\t100\n+140.379119873047\t4150.32763671875\t0.41\n+144.054061889648\t6955.7412109375\t0.68\n+144.065574645996\t275421.6875\t27.04\n+148.060394287109\t523997.53125\t51.44\n+150.054046630859\t3918.6318359375\t0.38\n+168.051147460938\t6748.05224609375\t0.66\n+168.065574645996\t174448.5546875\t17.13\n+186.076110839844\t123347.046875\t12.11\n+197.289779663086\t4408.47607421875\t0.43\n+219.097625732422\t8514.79125976562\t0.84\n+230.102722167969\t7866.95288085938\t0.77\n+239.558517456055\t4159.935546875\t0.41\n+258.096481323242\t12516.89453125\t1.23\n+285.323272705078\t4496.87939453125\t0.44\n+291.116821289062\t6737.97021484375\t0.66\n+291.118927001953\t8675.626953125\t0.85\n+301.107269287109\t5462.4970703125\t0.54\n+301.139266967773\t89015.59375\t8.74\n+302.220367431641\t3734.84155273438\t0.37\n+319.864624023438\t4290.947265625\t0.42\n+329.133895874023\t12967.8857421875\t1.27\n+332.25048828125\t4750.3056640625\t0.47\n+342.581665039062\t3982.03881835938\t0.39\n+376.824645996094\t3809.353515625\t0.37\n+426.685913085938\t4104.65283203125\t0.4\n+\n+RECORD_TITLE: MZ:498.1693 | RT:81.2 | grpid:840 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 498.169308539313\n+AC$CHROMATOGRAPHY: RETENTION_TIME 81.162672\n+XCMS groupid (grpid): 840\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 15\n+PK$PEAK: m/z int. rel.int.\n+110.071098327637\t19380.7294921875\t1.67\n+113.020816802979\t9337.1875\t0.81\n+136.075546264648\t26832.8837890625\t2.32\n+138.054496765137\t22557.607421875\t1.95\n+208.058097839355\t58436.056640625\t5.05\n+226.068435668945\t146951.8125\t12.7\n+236.147369384766\t6149.79077148438\t0.53\n+279.0947265625\t24795.88671875\t2.14\n+298.089447021484\t615103.03125\t53.15\n+323.121139526367\t466568.765625\t40.32\n+351.116027832031\t196796\t17.01\n+369.126586914062\t886075.9375\t76.57\n+452.164505004883\t53825.01953125\t4.65\n+480.157821655273\t18973.7768554688\t1.64\n+498.169281005859\t1157278.375\t100\n+\n+RECORD_TITLE: MZ:499.2505 | RT:129.3 | grpid:843 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 499.250501059464\n+AC$CHROMATOGRAPHY: RETENTION_TIME 129.271086\n+XCMS groupid (grpid): 843\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 9\n+PK$PEAK: m/z int. rel.int.\n+110.034912109375\t5403.05908203125\t0.28\n+118.086486816406\t5748.27075195312\t0.3\n+119.035583496094\t4770.26611328125\t0.25\n+137.045799255371\t1940576.6875\t100\n+143.80290222168\t3752.88916015625\t0.19\n+185.164245605469\t6015.66552734375\t0.31\n+188.177719116211\t3627.47534179688\t0.19\n+231.170310974121\t77430.171875\t3.99\n+473.909973144531\t4030.2705078125\t0.21\n+\n"
b
diff -r 000000000000 -r ab65999a5430 test-data/createMSP_output_av_all_and_all_xcms.msp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/createMSP_output_av_all_and_all_xcms.msp Wed Nov 27 14:23:10 2019 -0500
b
@@ -0,0 +1,10 @@
+RECORD_TITLE: MZ:112.0508 | RT:67.5 | grpid:12 | file:NA | adduct:NA
+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050766766484
+AC$CHROMATOGRAPHY: RETENTION_TIME 67.47903
+XCMS groupid (grpid): 12
+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0
+PK$NUM_PEAK: 2
+PK$PEAK: m/z int. rel.int.
+112.050884246826 502873.46875 100
+126.53768157959 2499.31469726562 0.5
+
b
diff -r 000000000000 -r ab65999a5430 test-data/createMSP_output_av_all_metadata.msp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/createMSP_output_av_all_metadata.msp Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,36 @@
+RECORD_TITLE: MZ:112.0508 | RT:67.5 | grpid:12 | file:NA | adduct:[M+NH4]+
+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050766766484
+AC$CHROMATOGRAPHY: RETENTION_TIME 67.47903
+isotope [4][M]+
+MS$FOCUSED_ION: PRECURSOR_TYPE [M+NH4]+
+AC$CHROMATOGRAPHY: COLUMN_NAME Acclaim RSLC C18 2.2um 2.1x100mm Thermo
+AC$MASS_SPECTROMETRY: ION_MODE POSITIVE
+AC$MASS_SPECTROMETRY: MS_TYPE MS2
+CH$LINK: INCHIKEY VACCAVUAMIDAGB-UHFFFAOYSA-N
+CH$LINK: PUBCHEM CID:5328
+CH$NAME Unknown
+XCMS groupid (grpid): 12
+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 
+PK$NUM_PEAK: 2
+PK$PEAK: m/z int. rel.int.
+112.050884246826 502873.46875 100
+126.53768157959 2499.31469726562 0.5
+
+RECORD_TITLE: MZ:112.0508 | RT:67.5 | grpid:12 | file:NA | adduct:[M+H+NH3]+
+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050766766484
+AC$CHROMATOGRAPHY: RETENTION_TIME 67.47903
+isotope [4][M]+
+MS$FOCUSED_ION: PRECURSOR_TYPE [M+H+NH3]+
+AC$CHROMATOGRAPHY: COLUMN_NAME Acclaim RSLC C18 2.2um 2.1x100mm Thermo
+AC$MASS_SPECTROMETRY: ION_MODE POSITIVE
+AC$MASS_SPECTROMETRY: MS_TYPE MS2
+CH$LINK: INCHIKEY VACCAVUAMIDAGB-UHFFFAOYSA-N
+CH$LINK: PUBCHEM CID:5328
+CH$NAME Unknown
+XCMS groupid (grpid): 12
+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_all' msPurity version:1.12.0 
+PK$NUM_PEAK: 2
+PK$PEAK: m/z int. rel.int.
+112.050884246826 502873.46875 100
+126.53768157959 2499.31469726562 0.5
+
b
diff -r 000000000000 -r ab65999a5430 test-data/createMSP_output_av_inter.msp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/createMSP_output_av_inter.msp Wed Nov 27 14:23:10 2019 -0500
b
b"@@ -0,0 +1,3182 @@\n+RECORD_TITLE: MZ:112.0508 | RT:67.5 | grpid:12 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050766766484\n+AC$CHROMATOGRAPHY: RETENTION_TIME 67.47903\n+XCMS groupid (grpid): 12\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.050884246826\t502873.46875\t100\n+126.53768157959\t2499.31469726562\t0.5\n+\n+RECORD_TITLE: MZ:113.0354 | RT:83.4 | grpid:14 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 113.03541992282\n+AC$CHROMATOGRAPHY: RETENTION_TIME 83.441172\n+XCMS groupid (grpid): 14\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.999992370605\t67035.0703125\t0.63\n+113.03479385376\t10613844.25\t100\n+\n+RECORD_TITLE: MZ:116.0706 | RT:47.7 | grpid:17 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070637437099\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.662548\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 3\n+PK$PEAK: m/z int. rel.int.\n+116.016647338867\t4672.2880859375\t2.97\n+116.070896148682\t157547.453125\t100\n+116.107257843018\t6525.58282470703\t4.14\n+\n+RECORD_TITLE: MZ:132.1018 | RT:73.5 | grpid:41 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 132.101827805179\n+AC$CHROMATOGRAPHY: RETENTION_TIME 73.529172\n+XCMS groupid (grpid): 41\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+132.102035522461\t338114.46875\t100\n+\n+RECORD_TITLE: MZ:137.0456 | RT:127 | grpid:47 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 137.045578757527\n+AC$CHROMATOGRAPHY: RETENTION_TIME 126.956946\n+XCMS groupid (grpid): 47\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 17\n+PK$PEAK: m/z int. rel.int.\n+104.860054016113\t30638.400390625\t0.26\n+109.06566619873\t2550.77392578125\t0.02\n+110.028198242188\t67928.296875\t0.58\n+110.035272598267\t511818.559082031\t4.38\n+110.559509277344\t33952.66015625\t0.29\n+112.050750732422\t24920.3304443359\t0.21\n+119.020355224609\t16488.48828125\t0.14\n+119.035472869873\t376451.501953125\t3.22\n+127.993309020996\t1960.09631347656\t0.02\n+128.04508972168\t18434.0234375\t0.16\n+128.045852661133\t75962.28125\t0.65\n+136.124038696289\t2269.25805664062\t0.02\n+137.045829772949\t11689172.5\t100\n+138.029312133789\t2125.6455078125\t0.02\n+138.030548095703\t43127.65234375\t0.37\n+154.112442016602\t2006.76232910156\t0.02\n+159.283874511719\t2343.61376953125\t0.02\n+\n+RECORD_TITLE: MZ:138.0547 | RT:50.7 | grpid:48 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 138.05471057982\n+AC$CHROMATOGRAPHY: RETENTION_TIME 50.6971758\n+XCMS groupid (grpid): 48\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 3\n+PK$PEAK: m/z int. rel.int.\n+110.060352325439\t34625.283203125\t7.61\n+110.072189331055\t8668.18530273438\t1.9\n+138.054901123047\t455046.234375\t100\n+\n+RECORD_TITLE: MZ:138.0487 | RT:127 | grpid:49 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 138.048727400006\n+AC$CHROMATOGRAPHY: RETENTION_TIME 126.956946\n+XCMS groupid (grpid): 49\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 8\n+PK$PEAK: m/z int. rel.int.\n+110.035133361816\t4197.11962890625\t0.87\n+111.032066345215\t3606.22302246094\t0.75\n+111.038753509521\t22056.884765625\t4.56\n+120.031585693359\t3442.69409179688\t0.71\n+120.038921356201\t14920.083984375\t3.08\n+131.267166137695\t2650.74243164062\t0.55\n+137.396865844727\t3584.59228515625\t0.74\n+138.050010681152\t483746.53125\t100\n+\n+RECORD_TITLE: MZ:140.0678 | RT:46.2 | grpid:51 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 140"..b"69629\t124625.0859375\t12.23\n+131.064346313477\t4367.2939453125\t0.43\n+133.538024902344\t3557.1923828125\t0.35\n+134.355972290039\t4310.93603515625\t0.42\n+136.169921875\t4170.79638671875\t0.41\n+138.054985046387\t1018626.90625\t100\n+140.379119873047\t4150.32763671875\t0.41\n+144.054061889648\t6955.7412109375\t0.68\n+144.065574645996\t275421.6875\t27.04\n+148.060394287109\t523997.53125\t51.44\n+150.054046630859\t3918.6318359375\t0.38\n+168.051147460938\t6748.05224609375\t0.66\n+168.065574645996\t174448.5546875\t17.13\n+186.076110839844\t123347.046875\t12.11\n+197.289779663086\t4408.47607421875\t0.43\n+219.097625732422\t8514.79125976562\t0.84\n+230.102722167969\t7866.95288085938\t0.77\n+239.558517456055\t4159.935546875\t0.41\n+258.096481323242\t12516.89453125\t1.23\n+285.323272705078\t4496.87939453125\t0.44\n+291.116821289062\t6737.97021484375\t0.66\n+291.118927001953\t8675.626953125\t0.85\n+301.107269287109\t5462.4970703125\t0.54\n+301.139266967773\t89015.59375\t8.74\n+302.220367431641\t3734.84155273438\t0.37\n+319.864624023438\t4290.947265625\t0.42\n+329.133895874023\t12967.8857421875\t1.27\n+332.25048828125\t4750.3056640625\t0.47\n+342.581665039062\t3982.03881835938\t0.39\n+376.824645996094\t3809.353515625\t0.37\n+426.685913085938\t4104.65283203125\t0.4\n+\n+RECORD_TITLE: MZ:498.1693 | RT:81.2 | grpid:840 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 498.169308539313\n+AC$CHROMATOGRAPHY: RETENTION_TIME 81.162672\n+XCMS groupid (grpid): 840\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 45\n+PK$PEAK: m/z int. rel.int.\n+101.778099060059\t3795.03295898438\t0.42\n+106.049766540527\t6611.89404296875\t0.74\n+109.610725402832\t3484.1552734375\t0.39\n+110.071098327637\t19380.7294921875\t2.16\n+113.020816802979\t9337.1875\t1.04\n+126.054611206055\t5812.5556640625\t0.65\n+127.031745910645\t4190.18701171875\t0.47\n+136.075546264648\t26832.8837890625\t2.99\n+137.078796386719\t9176.759765625\t1.02\n+138.054496765137\t22557.607421875\t2.51\n+148.036193847656\t6227.35693359375\t0.69\n+159.81298828125\t3442.19995117188\t0.38\n+167.347625732422\t4180.2548828125\t0.47\n+170.04133605957\t5330.70458984375\t0.59\n+180.837631225586\t3948.50952148438\t0.44\n+184.057907104492\t8015.86474609375\t0.89\n+186.075622558594\t4476.88330078125\t0.5\n+188.469665527344\t3955.94091796875\t0.44\n+195.686859130859\t3936.31909179688\t0.44\n+200.988327026367\t3759.4541015625\t0.42\n+208.058097839355\t58436.056640625\t6.5\n+210.997604370117\t4414.2978515625\t0.49\n+214.955703735352\t4026.87036132812\t0.45\n+226.046966552734\t7511.52294921875\t0.84\n+226.068435668945\t146951.8125\t16.35\n+236.147369384766\t6149.79077148438\t0.68\n+241.538787841797\t4289.0048828125\t0.48\n+244.78190612793\t4454.5654296875\t0.5\n+276.721008300781\t3612.77392578125\t0.4\n+279.0947265625\t24795.88671875\t2.76\n+296.157531738281\t4649.9521484375\t0.52\n+297.103424072266\t4021.5634765625\t0.45\n+298.089447021484\t615103.03125\t68.43\n+308.5830078125\t4018.92358398438\t0.45\n+311.841857910156\t3540.38208007812\t0.39\n+313.098754882812\t4193.3427734375\t0.47\n+323.121139526367\t466568.765625\t51.91\n+351.116027832031\t196796\t21.89\n+368.141418457031\t7687.5947265625\t0.86\n+368.143646240234\t8117.44580078125\t0.9\n+369.124267578125\t5257.81591796875\t0.58\n+369.126586914062\t886075.9375\t98.58\n+452.164505004883\t53825.01953125\t5.99\n+480.157821655273\t18973.7768554688\t2.11\n+498.169242858887\t898832.592529297\t100\n+\n+RECORD_TITLE: MZ:499.2505 | RT:129.3 | grpid:843 | file:NA | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 499.250501059464\n+AC$CHROMATOGRAPHY: RETENTION_TIME 129.271086\n+XCMS groupid (grpid): 843\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_inter' msPurity version:1.12.0 \n+PK$NUM_PEAK: 9\n+PK$PEAK: m/z int. rel.int.\n+110.034912109375\t5403.05908203125\t0.28\n+118.086486816406\t5748.27075195312\t0.3\n+119.035583496094\t4770.26611328125\t0.25\n+137.045799255371\t1940576.6875\t100\n+143.80290222168\t3752.88916015625\t0.19\n+185.164245605469\t6015.66552734375\t0.31\n+188.177719116211\t3627.47534179688\t0.19\n+231.170310974121\t77430.171875\t3.99\n+473.909973144531\t4030.2705078125\t0.21\n+\n"
b
diff -r 000000000000 -r ab65999a5430 test-data/createMSP_output_av_intra.msp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/createMSP_output_av_intra.msp Wed Nov 27 14:23:10 2019 -0500
b
b"@@ -0,0 +1,4664 @@\n+RECORD_TITLE: MZ:112.0508 | RT:67.5 | grpid:12 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050766766484\n+AC$CHROMATOGRAPHY: RETENTION_TIME 67.47903\n+XCMS groupid (grpid): 12\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+112.050888061523\t440629.6875\t100\n+\n+RECORD_TITLE: MZ:112.0508 | RT:67.5 | grpid:12 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050766766484\n+AC$CHROMATOGRAPHY: RETENTION_TIME 67.47903\n+XCMS groupid (grpid): 12\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.050880432129\t565117.25\t100\n+126.53768157959\t2499.31469726562\t0.44\n+\n+RECORD_TITLE: MZ:113.0354 | RT:83.4 | grpid:14 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 113.03541992282\n+AC$CHROMATOGRAPHY: RETENTION_TIME 83.441172\n+XCMS groupid (grpid): 14\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+113.034782409668\t13262784\t100\n+\n+RECORD_TITLE: MZ:113.0354 | RT:83.4 | grpid:14 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 113.03541992282\n+AC$CHROMATOGRAPHY: RETENTION_TIME 83.441172\n+XCMS groupid (grpid): 14\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.999992370605\t67035.0703125\t0.84\n+113.034805297852\t7964904.5\t100\n+\n+RECORD_TITLE: MZ:116.0706 | RT:47.7 | grpid:17 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070637437099\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.662548\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 3\n+PK$PEAK: m/z int. rel.int.\n+116.016784667969\t5682.14404296875\t3.8\n+116.070899963379\t149471.265625\t100\n+116.10725402832\t6152.61499023438\t4.12\n+\n+RECORD_TITLE: MZ:116.0706 | RT:47.7 | grpid:17 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070637437099\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.662548\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 3\n+PK$PEAK: m/z int. rel.int.\n+116.016510009766\t3662.43212890625\t2.21\n+116.070892333984\t165623.640625\t100\n+116.107261657715\t6898.55065917969\t4.17\n+\n+RECORD_TITLE: MZ:132.1018 | RT:73.5 | grpid:41 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 132.101827805179\n+AC$CHROMATOGRAPHY: RETENTION_TIME 73.529172\n+XCMS groupid (grpid): 41\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+132.102035522461\t273406.25\t100\n+\n+RECORD_TITLE: MZ:132.1018 | RT:73.5 | grpid:41 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 132.101827805179\n+AC$CHROMATOGRAPHY: RETENTION_TIME 73.529172\n+XCMS groupid (grpid): 41\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+132.102035522461\t402822.6875\t100\n+\n+RECORD_TITLE: MZ:137.0456 | RT:127 | grpid:47 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 137.045578757527\n+AC$CHROMATOGRAPHY: RETENTION_TIME 126.956946\n+XCMS groupid (grpid): 47\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 12\n+PK$PEAK: m/z int. rel.int.\n+104.860054016113\t30638.400390625\t0.18\n+110.028198242188\t67928.296875\t0.4\n+110.035266876221\t733295.444335938\t4.35\n+110.559509277344\t33952.66015625\t0.2\n+112.050758361816\t37811.4998779297\t0.22\n+119.035530090332\t552159.596679688\t3.28\n+127.993309020996\t1960.09631347656\t0.01\n"..b" 840\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 27\n+PK$PEAK: m/z int. rel.int.\n+110.071174621582\t19027.2734375\t1.64\n+113.020904541016\t9368.123046875\t0.81\n+126.054611206055\t5812.5556640625\t0.5\n+127.031745910645\t4190.18701171875\t0.36\n+136.075302124023\t22934.310546875\t1.98\n+137.078796386719\t9176.759765625\t0.79\n+138.054428100586\t23509.2890625\t2.03\n+148.036193847656\t6227.35693359375\t0.54\n+170.04133605957\t5330.70458984375\t0.46\n+186.075622558594\t4476.88330078125\t0.39\n+208.057647705078\t61292.54296875\t5.3\n+210.997604370117\t4414.2978515625\t0.38\n+214.955703735352\t4026.87036132812\t0.35\n+226.068435668945\t138242.484375\t11.95\n+236.147445678711\t7551.0751953125\t0.65\n+241.538787841797\t4289.0048828125\t0.37\n+279.094696044922\t23287.87890625\t2.01\n+297.103424072266\t4021.5634765625\t0.35\n+298.089477539062\t604584.8125\t52.24\n+313.098754882812\t4193.3427734375\t0.36\n+323.121063232422\t447545.03125\t38.67\n+351.115936279297\t177400.859375\t15.33\n+368.141418457031\t7687.5947265625\t0.66\n+369.126556396484\t840579.1875\t72.63\n+452.164520263672\t46214.9140625\t3.99\n+480.158355712891\t21752.802734375\t1.88\n+498.169158935547\t1157278.375\t100\n+\n+RECORD_TITLE: MZ:498.1693 | RT:81.2 | grpid:840 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 498.169308539313\n+AC$CHROMATOGRAPHY: RETENTION_TIME 81.162672\n+XCMS groupid (grpid): 840\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 33\n+PK$PEAK: m/z int. rel.int.\n+101.778099060059\t3795.03295898438\t0.41\n+106.049766540527\t6611.89404296875\t0.71\n+109.610725402832\t3484.1552734375\t0.37\n+110.071022033691\t19734.185546875\t2.12\n+113.020729064941\t9306.251953125\t1\n+136.075790405273\t30731.45703125\t3.3\n+138.054565429688\t21605.92578125\t2.32\n+159.81298828125\t3442.19995117188\t0.37\n+167.347625732422\t4180.2548828125\t0.45\n+180.837631225586\t3948.50952148438\t0.42\n+184.057907104492\t8015.86474609375\t0.86\n+188.469665527344\t3955.94091796875\t0.42\n+195.686859130859\t3936.31909179688\t0.42\n+200.988327026367\t3759.4541015625\t0.4\n+208.058547973633\t55579.5703125\t5.97\n+226.046966552734\t7511.52294921875\t0.81\n+226.068435668945\t155661.140625\t16.71\n+236.14729309082\t4748.50634765625\t0.51\n+244.78190612793\t4454.5654296875\t0.48\n+276.721008300781\t3612.77392578125\t0.39\n+279.094757080078\t26303.89453125\t2.82\n+296.157531738281\t4649.9521484375\t0.5\n+298.089416503906\t625621.25\t67.16\n+308.5830078125\t4018.92358398438\t0.43\n+311.841857910156\t3540.38208007812\t0.38\n+323.121215820312\t485592.5\t52.13\n+351.116119384766\t216191.140625\t23.21\n+368.143646240234\t8117.44580078125\t0.87\n+369.124267578125\t5257.81591796875\t0.56\n+369.126617431641\t931572.6875\t100\n+452.164489746094\t61435.125\t6.59\n+480.157287597656\t16194.7509765625\t1.74\n+498.169326782227\t640386.810058594\t68.74\n+\n+RECORD_TITLE: MZ:499.2505 | RT:129.3 | grpid:843 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 499.250501059464\n+AC$CHROMATOGRAPHY: RETENTION_TIME 129.271086\n+XCMS groupid (grpid): 843\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 8\n+PK$PEAK: m/z int. rel.int.\n+118.086380004883\t7052.74462890625\t0.36\n+119.035583496094\t4770.26611328125\t0.24\n+137.045806884766\t1959734\t100\n+143.80290222168\t3752.88916015625\t0.19\n+185.164245605469\t6015.66552734375\t0.31\n+188.177719116211\t3627.47534179688\t0.19\n+231.17024230957\t75057.1484375\t3.83\n+473.909973144531\t4030.2705078125\t0.21\n+\n+RECORD_TITLE: MZ:499.2505 | RT:129.3 | grpid:843 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 499.250501059464\n+AC$CHROMATOGRAPHY: RETENTION_TIME 129.271086\n+XCMS groupid (grpid): 843\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'av_intra' msPurity version:1.12.0 \n+PK$NUM_PEAK: 4\n+PK$PEAK: m/z int. rel.int.\n+110.034912109375\t5403.05908203125\t0.28\n+118.08659362793\t4443.796875\t0.23\n+137.045791625977\t1921419.375\t100\n+231.170379638672\t79803.1953125\t4.15\n+\n"
b
diff -r 000000000000 -r ab65999a5430 test-data/createMSP_output_max.msp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/createMSP_output_max.msp Wed Nov 27 14:23:10 2019 -0500
b
b"@@ -0,0 +1,2587 @@\n+RECORD_TITLE: MZ:112.0507 | RT:67.6 | grpid:12 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050743103027\n+AC$CHROMATOGRAPHY: RETENTION_TIME 67.634034\n+XCMS groupid (grpid): 12\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.050880432129\t565117.25\t100\n+126.53768157959\t2499.31469726562\t0.44\n+\n+RECORD_TITLE: MZ:113.0347 | RT:83.4 | grpid:14 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 113.034736633301\n+AC$CHROMATOGRAPHY: RETENTION_TIME 83.441172\n+XCMS groupid (grpid): 14\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+113.034782409668\t13262784\t100\n+\n+RECORD_TITLE: MZ:116.0708 | RT:47.8 | grpid:17 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070823669434\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.814411\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+116.070892333984\t1847702.625\t100\n+\n+RECORD_TITLE: MZ:132.1019 | RT:73.5 | grpid:41 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 132.101867675781\n+AC$CHROMATOGRAPHY: RETENTION_TIME 73.529172\n+XCMS groupid (grpid): 41\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+130.186950683594\t121726.4453125\t3.06\n+132.102035522461\t3973065.5\t100\n+\n+RECORD_TITLE: MZ:137.0456 | RT:127 | grpid:47 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 137.045639038086\n+AC$CHROMATOGRAPHY: RETENTION_TIME 126.956946\n+XCMS groupid (grpid): 47\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 9\n+PK$PEAK: m/z int. rel.int.\n+104.860054016113\t30638.400390625\t0.09\n+110.028198242188\t67928.296875\t0.21\n+110.035293579102\t1441146.625\t4.36\n+110.559509277344\t33952.66015625\t0.1\n+112.050506591797\t73567.3125\t0.22\n+119.035423278809\t1085099.625\t3.28\n+128.045852661133\t75962.28125\t0.23\n+137.045822143555\t33090892\t100\n+138.030548095703\t43127.65234375\t0.13\n+\n+RECORD_TITLE: MZ:138.0548 | RT:50.8 | grpid:48 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 138.054809570312\n+AC$CHROMATOGRAPHY: RETENTION_TIME 50.8435338\n+XCMS groupid (grpid): 48\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 7\n+PK$PEAK: m/z int. rel.int.\n+110.060409545898\t151747.359375\t6.55\n+110.071807861328\t12626.90234375\t0.54\n+128.93376159668\t2266.6416015625\t0.1\n+136.491333007812\t2493.95458984375\t0.11\n+138.054901123047\t2317689.75\t100\n+154.049453735352\t5643.62890625\t0.24\n+159.010818481445\t2415.3876953125\t0.1\n+\n+RECORD_TITLE: MZ:138.0488 | RT:126.4 | grpid:49 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 138.048797607422\n+AC$CHROMATOGRAPHY: RETENTION_TIME 126.441198\n+XCMS groupid (grpid): 49\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 5\n+PK$PEAK: m/z int. rel.int.\n+111.032066345215\t4279.24560546875\t0.77\n+111.038848876953\t24677.09765625\t4.42\n+120.038902282715\t18950.03125\t3.39\n+137.396865844727\t3584.59228515625\t0.64\n+138.05012512207\t558628.8125\t100\n+\n+RECORD_TITLE: MZ:140.0681 | RT:46.3 | grpid:51 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 140.068084716797\n+AC$CHROMATOGRAPHY: RETENTION_TIME 46.2952926\n+XCMS groupid (grpid): 51\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+114.089164733887\t856653.625\t10.81\n+140.068130493164\t7923872\t100\n+\n+RECORD_TITLE: MZ:146.1174 | RT:46.3 | grpid:62 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 146.117416381836\n+AC$CH"..b"\n+144.065582275391\t61227.703125\t22.68\n+145.069046020508\t33886.6875\t12.55\n+148.060440063477\t91076.7421875\t33.73\n+149.064071655273\t26683.80078125\t9.88\n+168.065292358398\t40215.578125\t14.9\n+169.069198608398\t34653.2890625\t12.84\n+186.076416015625\t39170.015625\t14.51\n+187.079940795898\t24879.5\t9.22\n+301.139862060547\t19206.294921875\t7.11\n+302.141815185547\t33403.7578125\t12.37\n+360.640808105469\t4196.35400390625\t1.55\n+480.125091552734\t3905.12133789062\t1.45\n+\n+RECORD_TITLE: MZ:487.1779 | RT:66.9 | grpid:812 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 487.177856445312\n+AC$CHROMATOGRAPHY: RETENTION_TIME 66.865908\n+XCMS groupid (grpid): 812\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 3\n+PK$PEAK: m/z int. rel.int.\n+112.050857543945\t12582074\t100\n+244.092895507812\t124155.421875\t0.99\n+294.906677246094\t6473.75732421875\t0.05\n+\n+RECORD_TITLE: MZ:494.1976 | RT:50.1 | grpid:830 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 494.197631835938\n+AC$CHROMATOGRAPHY: RETENTION_TIME 50.0837946\n+XCMS groupid (grpid): 830\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 29\n+PK$PEAK: m/z int. rel.int.\n+101.02392578125\t4665.49853515625\t0.46\n+102.05541229248\t139830.640625\t13.9\n+108.044906616211\t7338.142578125\t0.73\n+109.028587341309\t34949.8125\t3.47\n+110.060516357422\t4515.4990234375\t0.45\n+114.055053710938\t8607.400390625\t0.86\n+116.070930480957\t143212.125\t14.24\n+126.055122375488\t382392.125\t38.01\n+127.039169311523\t22511.798828125\t2.24\n+130.049911499023\t114702.28125\t11.4\n+136.169921875\t4170.79638671875\t0.41\n+138.054992675781\t1006045.75\t100\n+144.065567016602\t271017.65625\t26.94\n+148.060394287109\t530132.8125\t52.69\n+150.054046630859\t3918.6318359375\t0.39\n+168.065612792969\t182116.0625\t18.1\n+186.076141357422\t123048.53125\t12.23\n+197.289779663086\t4408.47607421875\t0.44\n+219.09797668457\t7606.20068359375\t0.76\n+230.102798461914\t9371.7431640625\t0.93\n+239.558517456055\t4159.935546875\t0.41\n+258.096801757812\t15609.2587890625\t1.55\n+291.118927001953\t8675.626953125\t0.86\n+301.139556884766\t84987.3046875\t8.45\n+302.220367431641\t3734.84155273438\t0.37\n+329.133361816406\t18578.4765625\t1.85\n+332.25048828125\t4750.3056640625\t0.47\n+342.581665039062\t3982.03881835938\t0.4\n+376.824645996094\t3809.353515625\t0.38\n+\n+RECORD_TITLE: MZ:498.1689 | RT:81.3 | grpid:840 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 498.168914794922\n+AC$CHROMATOGRAPHY: RETENTION_TIME 81.344292\n+XCMS groupid (grpid): 840\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 21\n+PK$PEAK: m/z int. rel.int.\n+106.049766540527\t6611.89404296875\t0.52\n+110.071022033691\t19734.185546875\t1.56\n+113.020729064941\t9306.251953125\t0.74\n+136.075790405273\t30731.45703125\t2.43\n+138.054565429688\t21605.92578125\t1.71\n+167.347625732422\t4180.2548828125\t0.33\n+180.837631225586\t3948.50952148438\t0.31\n+184.057907104492\t8015.86474609375\t0.63\n+208.058547973633\t55579.5703125\t4.39\n+226.046966552734\t7511.52294921875\t0.59\n+226.068435668945\t155661.140625\t12.3\n+236.14729309082\t4748.50634765625\t0.38\n+279.094757080078\t26303.89453125\t2.08\n+298.089416503906\t625621.25\t49.43\n+323.121215820312\t485592.5\t38.36\n+351.116119384766\t216191.140625\t17.08\n+368.143646240234\t8117.44580078125\t0.64\n+369.126617431641\t931572.6875\t73.6\n+452.164489746094\t61435.125\t4.85\n+480.157287597656\t16194.7509765625\t1.28\n+498.169281005859\t1265792.25\t100\n+\n+RECORD_TITLE: MZ:499.2504 | RT:129.5 | grpid:843 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 499.250396728516\n+AC$CHROMATOGRAPHY: RETENTION_TIME 129.525558\n+XCMS groupid (grpid): 843\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'max' msPurity version:1.12.0 \n+PK$NUM_PEAK: 4\n+PK$PEAK: m/z int. rel.int.\n+110.034912109375\t5403.05908203125\t0.28\n+118.08659362793\t4443.796875\t0.23\n+137.045791625977\t1921419.375\t100\n+231.170379638672\t79803.1953125\t4.15\n+\n"
b
diff -r 000000000000 -r ab65999a5430 test-data/createMSP_output_scans_all.msp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/createMSP_output_scans_all.msp Wed Nov 27 14:23:10 2019 -0500
b
b"@@ -0,0 +1,8190 @@\n+RECORD_TITLE: MZ:112.0507 | RT:67.5 | grpid:12 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050704956055\n+AC$CHROMATOGRAPHY: RETENTION_TIME 67.47903\n+XCMS groupid (grpid): 12\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+112.050888061523\t440629.6875\t100\n+\n+RECORD_TITLE: MZ:112.0507 | RT:67.6 | grpid:12 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 112.050743103027\n+AC$CHROMATOGRAPHY: RETENTION_TIME 67.634034\n+XCMS groupid (grpid): 12\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.050880432129\t565117.25\t100\n+126.53768157959\t2499.31469726562\t0.44\n+\n+RECORD_TITLE: MZ:113.0347 | RT:83.4 | grpid:14 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 113.034736633301\n+AC$CHROMATOGRAPHY: RETENTION_TIME 83.441172\n+XCMS groupid (grpid): 14\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 1\n+PK$PEAK: m/z int. rel.int.\n+113.034782409668\t13262784\t100\n+\n+RECORD_TITLE: MZ:113.0347 | RT:83.6 | grpid:14 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 113.034736633301\n+AC$CHROMATOGRAPHY: RETENTION_TIME 83.64567\n+XCMS groupid (grpid): 14\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 2\n+PK$PEAK: m/z int. rel.int.\n+112.999992370605\t67035.0703125\t0.84\n+113.034805297852\t7964904.5\t100\n+\n+RECORD_TITLE: MZ:113.0347 | RT:83.6 | grpid:14 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 113.034713745117\n+AC$CHROMATOGRAPHY: RETENTION_TIME 83.64567\n+XCMS groupid (grpid): 14\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 9\n+PK$PEAK: m/z int. rel.int.\n+111.010963439941\t2912.13012695312\t1.32\n+113.000129699707\t40987.0078125\t18.63\n+113.008010864258\t31639.541015625\t14.38\n+113.034889221191\t219966.0625\t100\n+113.060173034668\t14124.5009765625\t6.42\n+113.070793151855\t3284.5654296875\t1.49\n+113.107765197754\t7978.56494140625\t3.63\n+122.0078125\t3665.08813476562\t1.67\n+133.994140625\t1813.58288574219\t0.82\n+\n+RECORD_TITLE: MZ:116.0708 | RT:47.7 | grpid:17 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070838928223\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.662548\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 3\n+PK$PEAK: m/z int. rel.int.\n+116.016784667969\t3725.93701171875\t3.82\n+116.070854187012\t97631.5859375\t100\n+116.107086181641\t3945.32666015625\t4.04\n+\n+RECORD_TITLE: MZ:116.0708 | RT:47.7 | grpid:17 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070831298828\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.662548\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 4\n+PK$PEAK: m/z int. rel.int.\n+103.129020690918\t4419.71240234375\t0.25\n+116.016410827637\t5682.14404296875\t0.32\n+116.070899963379\t1782171\t100\n+130.027648925781\t4081.13793945312\t0.23\n+\n+RECORD_TITLE: MZ:116.0708 | RT:47.7 | grpid:17 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070770263672\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.662548\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 3\n+PK$PEAK: m/z int. rel.int.\n+116.016830444336\t14364.7841796875\t9.61\n+116.070922851562\t149471.265625\t100\n+116.107421875\t8359.9033203125\t5.59\n+\n+RECORD_TITLE: MZ:116.0708 | RT:47.8 | grpid:17 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 116.070816040039\n+AC$CHROMATOGRAPHY: RETENTION_TIME 47.814411\n+XCMS groupid (grpid): 17\n+COMMENT: Exported from msPurity purityA object using"..b"759765625\t0.79\n+138.054428100586\t23509.2890625\t2.03\n+148.036193847656\t6227.35693359375\t0.54\n+170.04133605957\t5330.70458984375\t0.46\n+186.075622558594\t4476.88330078125\t0.39\n+208.057647705078\t61292.54296875\t5.3\n+210.997604370117\t4414.2978515625\t0.38\n+214.955703735352\t4026.87036132812\t0.35\n+226.068435668945\t138242.484375\t11.95\n+236.147445678711\t7551.0751953125\t0.65\n+241.538787841797\t4289.0048828125\t0.37\n+279.094696044922\t23287.87890625\t2.01\n+297.103424072266\t4021.5634765625\t0.35\n+298.089477539062\t604584.8125\t52.24\n+313.098754882812\t4193.3427734375\t0.36\n+323.121063232422\t447545.03125\t38.67\n+351.115936279297\t177400.859375\t15.33\n+368.141418457031\t7687.5947265625\t0.66\n+369.126556396484\t840579.1875\t72.63\n+452.164520263672\t46214.9140625\t3.99\n+480.158355712891\t21752.802734375\t1.88\n+498.169158935547\t1157278.375\t100\n+\n+RECORD_TITLE: MZ:498.1689 | RT:81.3 | grpid:840 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 498.168914794922\n+AC$CHROMATOGRAPHY: RETENTION_TIME 81.344292\n+XCMS groupid (grpid): 840\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 21\n+PK$PEAK: m/z int. rel.int.\n+106.049766540527\t6611.89404296875\t0.52\n+110.071022033691\t19734.185546875\t1.56\n+113.020729064941\t9306.251953125\t0.74\n+136.075790405273\t30731.45703125\t2.43\n+138.054565429688\t21605.92578125\t1.71\n+167.347625732422\t4180.2548828125\t0.33\n+180.837631225586\t3948.50952148438\t0.31\n+184.057907104492\t8015.86474609375\t0.63\n+208.058547973633\t55579.5703125\t4.39\n+226.046966552734\t7511.52294921875\t0.59\n+226.068435668945\t155661.140625\t12.3\n+236.14729309082\t4748.50634765625\t0.38\n+279.094757080078\t26303.89453125\t2.08\n+298.089416503906\t625621.25\t49.43\n+323.121215820312\t485592.5\t38.36\n+351.116119384766\t216191.140625\t17.08\n+368.143646240234\t8117.44580078125\t0.64\n+369.126617431641\t931572.6875\t73.6\n+452.164489746094\t61435.125\t4.85\n+480.157287597656\t16194.7509765625\t1.28\n+498.169281005859\t1265792.25\t100\n+\n+RECORD_TITLE: MZ:498.1697 | RT:81.3 | grpid:840 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 498.169708251953\n+AC$CHROMATOGRAPHY: RETENTION_TIME 81.344292\n+XCMS groupid (grpid): 840\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 13\n+PK$PEAK: m/z int. rel.int.\n+101.778099060059\t3795.03295898438\t25.33\n+109.610725402832\t3484.1552734375\t23.26\n+159.81298828125\t3442.19995117188\t22.98\n+188.469665527344\t3955.94091796875\t26.41\n+195.686859130859\t3936.31909179688\t26.27\n+200.988327026367\t3759.4541015625\t25.09\n+244.78190612793\t4454.5654296875\t29.73\n+276.721008300781\t3612.77392578125\t24.12\n+296.157531738281\t4649.9521484375\t31.04\n+308.5830078125\t4018.92358398438\t26.83\n+311.841857910156\t3540.38208007812\t23.63\n+369.124267578125\t5257.81591796875\t35.1\n+498.169372558594\t14981.3701171875\t100\n+\n+RECORD_TITLE: MZ:499.2504 | RT:129.3 | grpid:843 | file:1 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 499.250396728516\n+AC$CHROMATOGRAPHY: RETENTION_TIME 129.271086\n+XCMS groupid (grpid): 843\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 8\n+PK$PEAK: m/z int. rel.int.\n+118.086380004883\t7052.74462890625\t0.36\n+119.035583496094\t4770.26611328125\t0.24\n+137.045806884766\t1959734\t100\n+143.80290222168\t3752.88916015625\t0.19\n+185.164245605469\t6015.66552734375\t0.31\n+188.177719116211\t3627.47534179688\t0.19\n+231.17024230957\t75057.1484375\t3.83\n+473.909973144531\t4030.2705078125\t0.21\n+\n+RECORD_TITLE: MZ:499.2504 | RT:129.5 | grpid:843 | file:2 | adduct:NA\n+MS$FOCUSED_ION: PRECURSOR_M/Z 499.250396728516\n+AC$CHROMATOGRAPHY: RETENTION_TIME 129.525558\n+XCMS groupid (grpid): 843\n+COMMENT: Exported from msPurity purityA object using function createMSP, using method 'all' msPurity version:1.12.0 \n+PK$NUM_PEAK: 4\n+PK$PEAK: m/z int. rel.int.\n+110.034912109375\t5403.05908203125\t0.28\n+118.08659362793\t4443.796875\t0.23\n+137.045791625977\t1921419.375\t100\n+231.170379638672\t79803.1953125\t4.15\n+\n"
b
diff -r 000000000000 -r ab65999a5430 test-data/dimsPredictPuritySingle_full_scan.mzML
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/dimsPredictPuritySingle_full_scan.mzML Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,4786 @@\n+<?xml version="1.0" encoding="utf-8"?>\n+<indexedmzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.2_idx.xsd">\n+  <mzML xmlns="http://psi.hupo.org/ms/mzml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.0.xsd" id="A02_Polar_Daph_WAX1_Phenyl_LCMS_Pos_DIMS" version="1.1.0">\n+    <cvList count="2">\n+      <cv id="MS" fullName="Proteomics Standards Initiative Mass Spectrometry Ontology" version="4.0.1" URI="http://psidev.cvs.sourceforge.net/*checkout*/psidev/psi/psi-ms/mzML/controlledVocabulary/psi-ms.obo"/>\n+      <cv id="UO" fullName="Unit Ontology" version="12:10:2011" URI="http://obo.cvs.sourceforge.net/*checkout*/obo/obo/ontology/phenotype/unit.obo"/>\n+    </cvList>\n+    <fileDescription>\n+      <fileContent>\n+        <cvParam cvRef="MS" accession="MS:1000579" name="MS1 spectrum" value=""/>\n+      </fileContent>\n+      <sourceFileList count="1">\n+        <sourceFile id="RAW1" name="A02_Polar_Daph_WAX1_Phenyl_LCMS_Pos_DIMS.raw" location="file:///R:\\daphnia_magna\\DIMS\\data\\P_WAX_1_PHE\\pos\\di-ms\\WAX1_pos_Subset_A">\n+          <cvParam cvRef="MS" accession="MS:1000768" name="Thermo nativeID format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000563" name="Thermo RAW format" value=""/>\n+          <cvParam cvRef="MS" accession="MS:1000569" name="SHA-1" value="d0b4c9c6fed4992d8991ec15459ffdc702a856fd"/>\n+        </sourceFile>\n+      </sourceFileList>\n+    </fileDescription>\n+    <referenceableParamGroupList count="1">\n+      <referenceableParamGroup id="CommonInstrumentParams">\n+        <cvParam cvRef="MS" accession="MS:1001910" name="LTQ Orbitrap Elite" value=""/>\n+        <cvParam cvRef="MS" accession="MS:1000529" name="instrument serial number" value="Slot R-258"/>\n+      </referenceableParamGroup>\n+    </referenceableParamGroupList>\n+    <softwareList count="2">\n+      <software id="Xcalibur" version="2.7.0 SP2">\n+        <cvParam cvRef="MS" accession="MS:1000532" name="Xcalibur" value=""/>\n+      </software>\n+      <software id="pwiz" version="3.0.10112">\n+        <cvParam cvRef="MS" accession="MS:1000615" name="ProteoWizard software" value=""/>\n+      </software>\n+    </softwareList>\n+    <instrumentConfigurationList count="2">\n+      <instrumentConfiguration id="IC1">\n+        <referenceableParamGroupRef ref="CommonInstrumentParams"/>\n+        <componentList count="3">\n+          <source order="1">\n+            <cvParam cvRef="MS" accession="MS:1000398" name="nanoelectrospray" value=""/>\n+            <cvParam cvRef="MS" accession="MS:1000485" name="nanospray inlet" value=""/>\n+          </source>\n+          <analyzer order="2">\n+            <cvParam cvRef="MS" accession="MS:1000484" name="orbitrap" value=""/>\n+          </analyzer>\n+          <detector order="3">\n+            <cvParam cvRef="MS" accession="MS:1000624" name="inductive detector" value=""/>\n+          </detector>\n+        </componentList>\n+        <softwareRef ref="Xcalibur"/>\n+      </instrumentConfiguration>\n+      <instrumentConfiguration id="IC2">\n+        <referenceableParamGroupRef ref="CommonInstrumentParams"/>\n+        <componentList count="3">\n+          <source order="1">\n+            <cvParam cvRef="MS" accession="MS:1000398" name="nanoelectrospray" value=""/>\n+            <cvParam cvRef="MS" accession="MS:1000485" name="nanospray inlet" value=""/>\n+          </source>\n+          <analyzer order="2">\n+            <cvParam cvRef="MS" accession="MS:1000083" name="radial ejection linear ion trap" value=""/>\n+          </analyzer>\n+          <detector order="3">\n+            <cvParam cvRef="MS" accession="MS:1000253" name="electron multiplier" value=""/>\n+          </detector>\n+        </componentList>\n+        <softwareRef ref="Xcalibur"/>\n+      </instrumentConfiguration>\n+    </instrume'..b'trollerType=0 controllerNumber=1 scan=70">721490</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=71">731907</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=72">742477</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=73">752715</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=74">763036</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=75">773916</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=76">784900</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=77">795342</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=78">805918</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=79">816327</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=80">827029</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=81">837571</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=82">848292</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=83">858746</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=84">868919</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=85">878388</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=86">888878</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=87">898707</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=88">908404</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=89">919285</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=90">930126</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=91">941028</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=92">951884</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=93">962709</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=94">973371</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=95">983520</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=96">994502</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=97">1005172</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=98">1015326</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=99">1026139</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=100">1036303</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=101">1046473</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=102">1056428</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=103">1066780</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=104">1076983</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=105">1086862</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=106">1097117</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=107">1107388</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=108">1117335</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=109">1127770</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=110">1138027</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=111">1148371</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=112">1159110</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=113">1169611</offset>\n+      <offset idRef="controllerType=0 controllerNumber=1 scan=114">1180253</offset>\n+    </index>\n+    <index name="chromatogram">\n+      <offset idRef="TIC">1190853</offset>\n+    </index>\n+  </indexList>\n+  <indexListOffset>1193981</indexListOffset>\n+  <fileChecksum>ba1bd6e94c255fdca25732a2e8e5a4f6092528bb</fileChecksum>\n+</indexedmzML>\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/dimsPredictPuritySingle_input_dimspy_peakmatrix.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/dimsPredictPuritySingle_input_dimspy_peakmatrix.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,286 @@\n+m/z\tpresent\toccurrence\tpurity\trsd_all\tblank_flag\tflags\tFULL_SCAN.mzML\n+missing values\t\t\t\t\t\t\t0\n+tags_class_label\t\t\t\t\t\t\tsample\n+tags_untyped\t\t\t\t\t\t\t\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+58.0647876546\t1\t1.0\t1.0\tnan\t1\t1\t113120.598252\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+72.0804488318\t1\t1.0\t1.0\tnan\t1\t1\t282356.694196\n+72.0807946804\t1\t1.0\t1.0\tnan\t1\t1\t242795.036574\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+75.0913582568\t1\t1.0\t1.0\tnan\t1\t1\t195736.137751\n+75.0916836387\t1\t1.0\t1.0\tnan\t1\t1\t204270.938871\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+84.0805289745\t1\t1.0\t1.0\tnan\t1\t1\t132563.310059\n+84.0807820515\t1\t1.0\t1.0\tnan\t1\t1\t140127.582831\n+84.9112399606\t1\t1.0\t1.0\tnan\t1\t1\t122855.946347\n+84.9597008445\t1\t1.0\t1.0\tnan\t0\t0\t128861.050071\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+86.9926795566\t1\t1.0\t1.0\tnan\t0\t0\t221315.525773\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+89.107296477\t1\t1.0\t1.0\tnan\t1\t1\t175881.079205\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+90.0548851707\t1\t1.0\t1.0\tnan\t1\t1\t256381.32358\n+90.9765716687\t1\t1.0\t1.0\tnan\t0\t0\t250976.822574\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+98.9753118816\t1\t1.0\t1.0\tnan\t0\t0\t204068.250069\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+100.075674626\t1\t1.0\t1.0\tnan\t1\t1\t114153.352522\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+101.00833759\t1\t1.0\t1.0\tnan\t0\t0\t548839.587993\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+102.97027295\t1\t1.0\t1.0\tnan\t0\t0\t198104.292219\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+104.106921012\t1\t1.0\t1.0\tnan\t1\t1\t4330923.89364\n+105.003296082\t1\t1.0\t1.0\tnan\t0\t0\t142544.562782\n+105.110335957\t1\t1.0\t1.0\tnan\t1\t1\t153890.694869\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+110.07127541\t1\t1.0\t1.0\tnan\t1\t1\t307519.792215\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+112.895720178\t1\t1.0\t1.0\tnan\t1\t1\t135570.753005\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+114.060611798\t1\t1.0\t1.0\tnan\t1\t1\t198789.380033\n+114.091348217\t1\t1.0\t1.0\tnan\t0\t0\t124409.253192\n+115.02403131\t1\t1.0\t1.0\tnan\t1\t1\t188274.209762\n+115.036614475\t1\t1.0\t1.0\tnan\t0\t0\t127907.266378\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+116.070609913\t1\t1.0\t1.0\tnan\t1\t1\t274092.595943\n+116.985932133\t1\t1.0\t1.0\tnan\t0\t0\t339563.880208\n+117.102272268\t1\t1.0\t1.0\tnan\t1\t1\t123295.1875\n+118.086249301\t1\t1.0\t1.0\tnan\t1\t1\t2757662.51425\n+119.018937696\t1\t1.0\t1.0\tnan\t0\t0\t293270.206003\n+119.089606756\t1\t1.0\t1.0\tnan\t1\t1\t120996.805775\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+120.065520547\t1\t1.0\t1.0\tnan\t1\t1\t116547.678977\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+122.924530119\t1\t1.0\t1.0\tnan\t1\t1\t120229.772702\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+123.044065449\t1\t1.0\t1.0\tnan\t0\t0\t113950.890185\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+127.097842781\t1\t1.0\t1.0\tnan\t1\t1\t168682.057956\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+130.049888813\t1\t1.0\t1.0\tnan\t1\t1\t174680.456305\n+130.086277477\t1\t1.0\t1.0\tnan\t1\t1\t453421.277412\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+133.034606664\t1\t1.0\t1.0\tnan\t0\t0\t160509.307453\n+134.018873266\t1\t1.0\t1.0\tnan\t1\t1\t114568.315878\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+138.055002848\t1\t1.0\t1.0\tnan\t1\t1\t1378587.42544\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+139.05833172\t1\t1.0\t1.0\tnan\t1\t1\t109961.307651\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+140.068255642\t1\t1.0\t1.0\tnan\t1\t1\t1875073.24452\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+144.032332934\t1\t1.0\t1.0\tnan\t1\t1\t156621.003906\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0'..b'40.030617\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+209.080034528\t1\t1.0\t1.0\tnan\t1\t1\t150708.108602\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+213.074881303\t1\t1.0\t1.0\tnan\t1\t1\t338210.636924\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+216.01457806\t1\t1.0\t1.0\tnan\t1\t1\t130393.950893\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+217.107029308\t1\t1.0\t1.0\tnan\t0\t0\t117428.487419\n+217.179795222\t1\t1.0\t1.0\tnan\t0\t0\t108312.020173\n+219.026545661\t1\t1.0\t1.0\tnan\t1\t1\t162542.281599\n+219.082858035\t1\t1.0\t1.0\tnan\t1\t1\t946967.953399\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+221.018563923\t1\t1.0\t1.0\tnan\t1\t1\t259831.16276\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+226.951522024\t1\t1.0\t1.0\tnan\t0\t0\t223744.275219\n+227.113936173\t1\t1.0\t1.0\tnan\t1\t1\t1703845.4386\n+228.1172087\t1\t1.0\t1.0\tnan\t1\t1\t156374.441925\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+232.896645878\t1\t1.0\t1.0\tnan\t1\t1\t123935.480864\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+235.056798165\t1\t1.0\t1.0\tnan\t1\t1\t405245.252467\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+237.144275788\t1\t1.0\t1.0\tnan\t1\t1\t113584.923135\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+238.04512725\t1\t1.0\t1.0\tnan\t1\t1\t137101.655687\n+239.089026602\t1\t1.0\t1.0\tnan\t0\t0\t195155.207648\n+239.161804467\t1\t1.0\t1.0\tnan\t0\t0\t948471.314145\n+240.16516319\t1\t1.0\t1.0\tnan\t0\t0\t124114.235779\n+242.925409016\t1\t1.0\t1.0\tnan\t1\t1\t224849.671532\n+244.165571621\t1\t1.0\t1.0\tnan\t1\t1\t161038.253836\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+249.09581248\t1\t1.0\t1.0\tnan\t1\t1\t463754.661458\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+255.135716622\t1\t1.0\t1.0\tnan\t1\t1\t217409.046327\n+258.11005415\t1\t1.0\t1.0\tnan\t1\t1\t1115782.48355\n+259.113428484\t1\t1.0\t1.0\tnan\t1\t1\t116684.024123\n+260.026986373\t1\t1.0\t1.0\tnan\t1\t1\t114329.273026\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+262.139666583\t1\t1.0\t1.0\tnan\t1\t1\t112895.448374\n+263.013036178\t1\t1.0\t1.0\tnan\t1\t1\t109641.587791\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+263.200494221\t1\t1.0\t1.0\tnan\t0\t0\t161257.532785\n+265.069706061\t1\t1.0\t1.0\tnan\t1\t1\t117335.705028\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+271.077737641\t1\t1.0\t1.0\tnan\t1\t1\t450346.351974\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+276.155374087\t1\t1.0\t1.0\tnan\t1\t1\t136931.070613\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+280.092071266\t1\t1.0\t1.0\tnan\t1\t1\t4695554.13158\n+281.095366093\t1\t1.0\t1.0\tnan\t1\t1\t340729.456277\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+285.182496188\t1\t1.0\t1.0\tnan\t0\t0\t1029922.30702\n+286.185822336\t1\t1.0\t1.0\tnan\t0\t0\t183219.009046\n+287.051676968\t1\t1.0\t1.0\tnan\t1\t1\t242733.36705\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+290.145887292\t1\t1.0\t1.0\tnan\t1\t1\t113405.155344\n+292.197944568\t1\t1.0\t1.0\tnan\t1\t1\t284733.869866\n+295.035845285\t1\t1.0\t1.0\tnan\t1\t1\t165469.133189\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+296.065981413\t1\t1.0\t1.0\tnan\t1\t1\t2118414.36513\n+297.069291673\t1\t1.0\t1.0\tnan\t1\t1\t164842.79237\n+298.064070296\t1\t1.0\t1.0\tnan\t1\t1\t138663.554301\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+304.161525258\t1\t1.0\t1.0\tnan\t1\t1\t419869.29057\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+309.2036181\t1\t1.0\t1.0\tnan\t0\t0\t179366.074082\n+312.166592178\t1\t1.0\t1.0\tnan\t1\t1\t148686.24328\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+326.143410047\t1\t1.0\t1.0\tnan\t1\t1\t125171.338949\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+348.079411021\t1\t1.0\t1.0\tnan\t1\t1\t224606.194901\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+360.323661403\t1\t1.0\t1.0\tnan\t0\t0\t113707.860095\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+364.053454491\t1\t1.0\t1.0\tnan\t1\t1\t111448.034526\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n+nan\t0\t0.0\tnan\tnan\t0\t0\t0.0\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/dimsPredictPuritySingle_output.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/dimsPredictPuritySingle_output.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,105 @@\n+"mz"\t"present"\t"occurrence"\t"purity"\t"rsd_all"\t"blank_flag"\t"flags"\t"FULL_SCAN.mzML"\t"i"\t"medianPurity"\t"meanPurity"\t"sdPurity"\t"cvPurity"\t"sdePurity"\t"medianPeakNum"\n+58.0647876546\t1\t1\t1\tNA\t1\t1\t113120.598252\t"113120.598252"\t0.613078515127758\t0.626629067263995\t0.149544695745243\t23.8649471525777\t0.0140061440232296\t3\n+72.0804488318\t1\t1\t1\tNA\t1\t1\t282356.694196\t"282356.694196"\t0.476393449015639\t0.491371797539656\t0.0959939418911048\t19.5359079157077\t0.00899065639730063\t3\n+72.0807946804\t1\t1\t1\tNA\t1\t1\t242795.036574\t"242795.036574"\t0.408868285818401\t0.413678708258705\t0.0963729445058641\t23.2965687094523\t0.00902615324445423\t4\n+75.0913582568\t1\t1\t1\tNA\t1\t1\t195736.137751\t"195736.137751"\t0.459383030656064\t0.474810934372905\t0.132551039182737\t27.916593655915\t0.0124145422608961\t4\n+75.0916836387\t1\t1\t1\tNA\t1\t1\t204270.938871\t"204270.938871"\t0.476040133259869\t0.487345328966681\t0.132269392840645\t27.1407942128215\t0.0123881636641073\t4\n+84.0805289745\t1\t1\t1\tNA\t1\t1\t132563.310059\t"132563.310059"\t0.538722764069125\t0.556981810892634\t0.209884767937749\t37.682517423932\t0.0196575095717612\t5\n+84.0807820515\t1\t1\t1\tNA\t1\t1\t140127.582831\t"140127.582831"\t0.5505876981432\t0.572987236535537\t0.193308605470024\t33.7369828059049\t0.0181050097139868\t5\n+84.9112399606\t1\t1\t1\tNA\t1\t1\t122855.946347\t"122855.946347"\t0.32276675677724\t0.327703846067696\t0.0947526802174731\t28.9141190603846\t0.00887440159010228\t6\n+89.107296477\t1\t1\t1\tNA\t1\t1\t175881.079205\t"175881.079205"\t0.727499843566072\t0.723783787357409\t0.179608084586012\t24.8151571951861\t0.0168218383668624\t4\n+90.0548851707\t1\t1\t1\tNA\t1\t1\t256381.32358\t"256381.32358"\t0.893273602686132\t0.844876773288864\t0.155850251606917\t18.4465068201882\t0.0145967134386475\t4\n+100.075674626\t1\t1\t1\tNA\t1\t1\t114153.352522\t"114153.352522"\t0.803585118260451\t0.820058588023192\t0.153657568870831\t18.7373891469429\t0.0143913498846557\t2\n+104.106921012\t1\t1\t1\tNA\t1\t1\t4330923.89364\t"4330923.89364"\t1\t0.999122344752109\t0.00660156470757468\t0.660736369499631\t0.00061829318393529\t1\n+105.110335957\t1\t1\t1\tNA\t1\t1\t153890.694869\t"153890.694869"\t0.391125240899743\t0.403016832885059\t0.0903953152029485\t22.4296624425931\t0.00846629696525365\t3\n+110.07127541\t1\t1\t1\tNA\t1\t1\t307519.792215\t"307519.792215"\t0.930011674739557\t0.922043618437714\t0.0720614140946035\t7.81540185882989\t0.00674916980035187\t1\n+112.895720178\t1\t1\t1\tNA\t1\t1\t135570.753005\t"135570.753005"\t0.81320227648801\t0.792925322586529\t0.149214233550325\t18.8181950178596\t0.0139751934029272\t2\n+114.060611798\t1\t1\t1\tNA\t1\t1\t198789.380033\t"198789.380033"\t0.580515437078976\t0.571866534143408\t0.0973226619466432\t17.018422330382\t0.00911510243245877\t2\n+115.02403131\t1\t1\t1\tNA\t1\t1\t188274.209762\t"188274.209762"\t0.500884725143099\t0.500148229907369\t0.0804970602595476\t16.0946406377278\t0.00753924045131289\t4\n+116.070609913\t1\t1\t1\tNA\t1\t1\t274092.595943\t"274092.595943"\t0.913492312956886\t0.904724725504385\t0.0778724998374355\t8.6073142075366\t0.00729342784601398\t2\n+117.102272268\t1\t1\t1\tNA\t1\t1\t123295.1875\t"123295.1875"\t0.213991552935658\t0.217964963149686\t0.0546746046495807\t25.0841253839651\t0.00512074589686358\t2\n+118.086249301\t1\t1\t1\tNA\t1\t1\t2757662.51425\t"2757662.51425"\t1\t1\t0\t0\t0\t1\n+119.089606756\t1\t1\t1\tNA\t1\t1\t120996.805775\t"120996.805775"\t0.245753391841173\t0.244365684866505\t0.061260456714936\t25.0691731731492\t0.00573756745702236\t2\n+120.065520547\t1\t1\t1\tNA\t1\t1\t116547.678977\t"116547.678977"\t0.27910970300615\t0.282957310720395\t0.0609596603169771\t21.5437657934255\t0.00570939529317204\t10\n+122.924530119\t1\t1\t1\tNA\t1\t1\t120229.772702\t"120229.772702"\t0.357208113463262\t0.353958143149677\t0.0731944766617116\t20.678850897565\t0.00685529083275065\t3\n+127.097842781\t1\t1\t1\tNA\t1\t1\t168682.057956\t"168682.057956"\t0.734310304262316\t0.747504411490134\t0.163073130903308\t21.8156747166515\t0.0152731980654243\t4\n+130.049888813\t1\t1\t1\tNA\t1\t1\t174680.456305\t"174680.456305"\t0.241869237375463\t0.239556543016276\t0.0354736465579429\t14.8080474493793\t0.00332241140512331\t4\n+130.086277477\t1\t1\t1\tNA\t1\t1\t453421.277412\t"453421.277412"\t0.639765885779089\t0.636276372943821\t0.0498574121241801\t7.83581070180366\t0.0046695744797688'..b'165\t1\t1\t1\tNA\t1\t1\t405245.252467\t"405245.252467"\t0.882250620609371\t0.889874401666798\t0.0718962199932569\t8.07936713974357\t0.00673369795520405\t3\n+237.144275788\t1\t1\t1\tNA\t1\t1\t113584.923135\t"113584.923135"\t0.715421084752693\t0.734762878250434\t0.177786218541092\t24.1964072769196\t0.0167247205892612\t2\n+238.04512725\t1\t1\t1\tNA\t1\t1\t137101.655687\t"137101.655687"\t1\t0.949162657253317\t0.0781229717555066\t8.2307253828947\t0.00731688669048049\t2\n+242.925409016\t1\t1\t1\tNA\t1\t1\t224849.671532\t"224849.671532"\t1\t0.933443806761231\t0.0825613579832409\t8.84481287306452\t0.00773257964720204\t2\n+244.165571621\t1\t1\t1\tNA\t1\t1\t161038.253836\t"161038.253836"\t0.77150430659296\t0.787420410453563\t0.127495131038891\t16.1914943207343\t0.0119410130776774\t4\n+249.09581248\t1\t1\t1\tNA\t1\t1\t463754.661458\t"463754.661458"\t0.833371422960006\t0.828114896079207\t0.0513080203326779\t6.19576106837359\t0.00480543638639312\t2\n+255.135716622\t1\t1\t1\tNA\t1\t1\t217409.046327\t"217409.046327"\t0.722742628240063\t0.722620903503393\t0.0771306433791256\t10.6737354268584\t0.00722394662270566\t2\n+258.11005415\t1\t1\t1\tNA\t1\t1\t1115782.48355\t"1115782.48355"\t1\t0.998989650412204\t0.00759802222211233\t0.760570664468569\t0.000711619980931282\t1\n+259.113428484\t1\t1\t1\tNA\t1\t1\t116684.024123\t"116684.024123"\t0.40943839312185\t0.414664220914468\t0.111090050920774\t26.7903632186508\t0.0104504729170969\t4\n+260.026986373\t1\t1\t1\tNA\t1\t1\t114329.273026\t"114329.273026"\t0.834789069821472\t0.847982448683166\t0.142597975529527\t16.8161470500914\t0.0133555240641229\t1\n+262.139666583\t1\t1\t1\tNA\t1\t1\t112895.448374\t"112895.448374"\t1\t0.873757428844562\t0.143619940675396\t16.4370494526514\t0.0134512398696781\t4\n+263.013036178\t1\t1\t1\tNA\t1\t1\t109641.587791\t"109641.587791"\t0.341354546076094\t0.345083410338949\t0.0702030543390681\t20.3437929021604\t0.00657511846236699\t5\n+265.069706061\t1\t1\t1\tNA\t1\t1\t117335.705028\t"117335.705028"\t0.535835841158933\t0.552604088184114\t0.13111179807168\t23.7261722949825\t0.0122797449804899\t3\n+271.077737641\t1\t1\t1\tNA\t1\t1\t450346.351974\t"450346.351974"\t0.890554482567277\t0.890000125563021\t0.0491961434495172\t5.52765578750849\t0.00460764099393555\t2\n+276.155374087\t1\t1\t1\tNA\t1\t1\t136931.070613\t"136931.070613"\t0.647990474549476\t0.647778048196749\t0.0884741270155522\t13.6580928084615\t0.00828636120548428\t3\n+280.092071266\t1\t1\t1\tNA\t1\t1\t4695554.13158\t"4695554.13158"\t1\t1\t0\t0\t0\t1\n+281.095366093\t1\t1\t1\tNA\t1\t1\t340729.456277\t"340729.456277"\t1\t0.962121343327033\t0.0537481189998876\t5.5864179058772\t0.00503397256544992\t1\n+287.051676968\t1\t1\t1\tNA\t1\t1\t242733.36705\t"242733.36705"\t0.771021230917071\t0.768797501339101\t0.0846791903309667\t11.0144986402104\t0.00793093282002092\t2\n+290.145887292\t1\t1\t1\tNA\t1\t1\t113405.155344\t"113405.155344"\t1\t0.912976640198171\t0.122323676132966\t13.3983358113537\t0.011456661948665\t4\n+292.197944568\t1\t1\t1\tNA\t1\t1\t284733.869866\t"284733.869866"\t1\t0.946299361732444\t0.0830140830525254\t8.77249699297554\t0.00777498123484596\t1\n+295.035845285\t1\t1\t1\tNA\t1\t1\t165469.133189\t"165469.133189"\t1\t0.946438667823634\t0.120155782220767\t12.6955698563193\t0.0113033051792031\t1\n+296.065981413\t1\t1\t1\tNA\t1\t1\t2118414.36513\t"2118414.36513"\t1\t1\t0\t0\t0\t1\n+297.069291673\t1\t1\t1\tNA\t1\t1\t164842.79237\t"164842.79237"\t0.640424674805916\t0.652908708298409\t0.128668878850103\t19.7070244606533\t0.012050944632313\t3\n+298.064070296\t1\t1\t1\tNA\t1\t1\t138663.554301\t"138663.554301"\t0.487445588689514\t0.499865711270908\t0.102282113256446\t20.4619182612855\t0.00962189184027137\t4\n+304.161525258\t1\t1\t1\tNA\t1\t1\t419869.29057\t"419869.29057"\t1\t0.972356491662697\t0.0385307174146733\t3.96261224613074\t0.00360873232406467\t1\n+312.166592178\t1\t1\t1\tNA\t1\t1\t148686.24328\t"148686.24328"\t1\t0.924022031662414\t0.10845341092504\t11.7371022777369\t0.0102024386904567\t1\n+326.143410047\t1\t1\t1\tNA\t1\t1\t125171.338949\t"125171.338949"\t1\t0.935622006691498\t0.104469097443653\t11.1657375196925\t0.00978442744144706\t3\n+348.079411021\t1\t1\t1\tNA\t1\t1\t224606.194901\t"224606.194901"\t0.763842231385576\t0.7670558334405\t0.0752246033459717\t9.80692670161498\t0.00704542961756979\t3\n+364.053454491\t1\t1\t1\tNA\t1\t1\t111448.034526\t"111448.034526"\t1\t0.869279361784151\t0.156249338921548\t17.9745828315599\t0.0146340913902941\t1\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/filterFragSpectra_output.RData
b
Binary file test-data/filterFragSpectra_output.RData has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/filterFragSpectra_output_frag.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/filterFragSpectra_output_frag.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,5607 @@\n+"grpid"\t"pid"\t"precursorScanNum"\t"acquisitionNum"\t"fileid"\t"mz"\t"i"\t"snr"\t"ra"\t"purity_pass_flag"\t"intensity_pass_flag"\t"ra_pass_flag"\t"snr_pass_flag"\t"pass_flag"\n+"12"\t384\t462\t466\t1\t112.050888061523\t440629.6875\t1\t100\t1\t1\t1\t1\t1\n+"12"\t1218\t468\t472\t2\t112.050880432129\t565117.25\t1.99119365130368\t100\t1\t1\t1\t1\t1\n+"12"\t1218\t468\t472\t2\t126.53768157959\t2499.31469726562\t0.00880634869631973\t0.442264803855417\t1\t1\t1\t1\t1\n+"14"\t499\t600\t604\t1\t113.034782409668\t13262784\t1\t100\t1\t1\t1\t1\t1\n+"14"\t1321\t594\t596\t2\t112.999992370605\t67035.0703125\t0.0166921251649536\t0.84163055956917\t1\t1\t1\t1\t1\n+"14"\t1321\t594\t596\t2\t113.034805297852\t7964904.5\t1.98330787483505\t100\t1\t1\t1\t1\t1\n+"14"\t1380\t666\t667\t2\t111.010963439941\t2912.13012695312\t0.364994224943897\t1.32389973883045\t0\t1\t1\t1\t0\n+"14"\t1380\t666\t667\t2\t113.000129699707\t40987.0078125\t5.13714033958542\t18.6333324998714\t0\t1\t1\t1\t0\n+"14"\t1380\t666\t667\t2\t113.008010864258\t31639.541015625\t3.9655678994885\t14.3838284215434\t0\t1\t1\t1\t0\n+"14"\t1380\t666\t667\t2\t113.034889221191\t219966.0625\t27.5696273848001\t100\t0\t1\t1\t1\t0\n+"14"\t1380\t666\t667\t2\t113.060173034668\t14124.5009765625\t1.77030594853728\t6.4212182625047\t0\t1\t1\t1\t0\n+"14"\t1380\t666\t667\t2\t113.070793151855\t3284.5654296875\t0.411673709972784\t1.49321463154686\t0\t1\t1\t1\t0\n+"14"\t1380\t666\t667\t2\t113.107765197754\t7978.56494140625\t1\t3.62717996163897\t0\t1\t1\t1\t0\n+"14"\t1380\t666\t667\t2\t122.0078125\t3665.08813476562\t0.459366836227022\t1.66620618340414\t0\t1\t1\t1\t0\n+"14"\t1380\t666\t667\t2\t133.994140625\t1813.58288574219\t0.22730690281535\t0.824483043034053\t0\t1\t1\t1\t0\n+"17"\t226\t276\t277\t1\t116.016784667969\t3725.93701171875\t0.944392526313953\t3.81632335062543\t1\t1\t1\t1\t1\n+"17"\t226\t276\t277\t1\t116.070854187012\t97631.5859375\t24.7461349458028\t100\t1\t1\t1\t1\t1\n+"17"\t226\t276\t277\t1\t116.107086181641\t3945.32666015625\t1\t4.04103510382582\t1\t1\t1\t1\t1\n+"17"\t281\t342\t343\t1\t103.129020690918\t4419.71240234375\t0.875029738597127\t0.247995978070777\t1\t1\t1\t1\t1\n+"17"\t281\t342\t343\t1\t116.016410827637\t5682.14404296875\t1.12497026140287\t0.318832707016821\t1\t1\t1\t1\t1\n+"17"\t281\t342\t343\t1\t116.070899963379\t1782171\t352.840294187108\t100\t1\t1\t1\t1\t1\n+"17"\t281\t342\t343\t1\t130.027648925781\t4081.13793945312\t0.807997611438414\t0.228998111822778\t1\t1\t1\t1\t1\n+"17"\t337\t408\t410\t1\t116.016830444336\t14364.7841796875\t1\t9.61039843987572\t1\t1\t1\t1\t1\n+"17"\t337\t408\t410\t1\t116.070922851562\t149471.265625\t10.4053958455122\t100\t1\t1\t1\t1\t1\n+"17"\t337\t408\t410\t1\t116.107421875\t8359.9033203125\t0.581972079478493\t5.59298356467135\t1\t1\t1\t1\t1\n+"17"\t1055\t276\t277\t2\t107.270111083984\t1726.61291503906\t0.649700011708406\t1.71161687794708\t1\t1\t1\t1\t1\n+"17"\t1055\t276\t277\t2\t116.016410827637\t2890.4951171875\t1.0876524177032\t2.86539049089055\t1\t1\t1\t1\t1\n+"17"\t1055\t276\t277\t2\t116.070892333984\t100876.1328125\t37.9582615759\t100\t1\t1\t1\t1\t1\n+"17"\t1055\t276\t277\t2\t116.107200622559\t2424.61303710938\t0.912347582296798\t2.40355470566664\t1\t1\t1\t1\t1\n+"17"\t1110\t342\t343\t2\t116.070892333984\t1847702.625\t1\t100\t1\t1\t1\t1\t1\n+"17"\t1165\t408\t409\t2\t116.016609191895\t4434.369140625\t0.3899207482971\t2.67737692752761\t1\t1\t1\t1\t1\n+"17"\t1165\t408\t409\t2\t116.070899963379\t165623.640625\t14.5635358356945\t100\t1\t1\t1\t1\t1\n+"17"\t1165\t408\t409\t2\t116.107322692871\t11372.48828125\t1\t6.86646437569818\t1\t1\t1\t1\t1\n+"41"\t391\t474\t475\t1\t117.877166748047\t5004.6640625\t0.0359516370207851\t1.83048634129615\t1\t1\t1\t1\t1\n+"41"\t391\t474\t475\t1\t132.101867675781\t273406.25\t1.96404836297921\t100\t1\t1\t1\t1\t1\n+"41"\t446\t540\t541\t1\t130.186950683594\t121726.4453125\t0.0594542760356096\t3.06379155623032\t1\t1\t1\t1\t1\n+"41"\t446\t540\t541\t1\t132.102035522461\t3973065.5\t1.94054572396439\t100\t1\t1\t1\t1\t1\n+"41"\t501\t606\t607\t1\t132.102142333984\t77799.46875\t1\t100\t1\t1\t1\t1\t1\n+"41"\t1223\t474\t478\t2\t132.101989746094\t402822.6875\t52.2082523480178\t100\t1\t1\t1\t1\t1\n+"41"\t1223\t474\t478\t2\t144.278900146484\t7715.68994140625\t1\t1.91540600389005\t1\t1\t1\t1\t1\n+"41"\t1223\t474\t478\t2\t146.682891845703\t7014.509765625\t0.909122815832922\t1.74133929971981\t1\t1\t1\t1\t1\n+"41"\t1280\t546\t547\t2\t104.964813232422\t111113.6796875\t0.0646107352310741\t3.33838450007049\t1\t1\t1\t1\t1\n+"41"\t1280\t546\t547\t2\t132.102066040039\t3328366.75\t1.93538926476893\t100\t1\t1\t1\t1\t1\n+"41"\t1338\t612\t616\t2\t11'..b'125\t1\t1.70690931163862\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t167.347625732422\t4180.2548828125\t0.19347723976911\t0.330248102152032\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t180.837631225586\t3948.50952148438\t0.182751230447665\t0.311939776964535\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t184.057907104492\t8015.86474609375\t0.371003067734781\t0.633268590962992\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t208.058547973633\t55579.5703125\t2.57242253237456\t4.39089197397914\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t226.046966552734\t7511.52294921875\t0.347660314363265\t0.593424627873867\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t226.068435668945\t155661.140625\t7.20455777738927\t12.2975267564642\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t236.14729309082\t4748.50634765625\t0.219777962570671\t0.375141050804842\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t279.094757080078\t26303.89453125\t1.21743890067775\t2.07805779591793\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t298.089416503906\t625621.25\t28.9560029194826\t49.4252710111\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t323.121215820312\t485592.5\t22.4749684376592\t38.3627329050245\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t351.116119384766\t216191.140625\t10.0061040111789\t17.0795121099059\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t368.143646240234\t8117.44580078125\t0.375704604512976\t0.641293687868704\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t369.126617431641\t931572.6875\t43.1165364970584\t73.5960176324353\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t452.164489746094\t61435.125\t2.84343867612998\t4.85349195335964\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t480.157287597656\t16194.7509765625\t0.749551356443915\t1.27941618986548\t1\t1\t1\t1\t1\n+"840"\t1313\t582\t586\t2\t498.169281005859\t1265792.25\t58.5854206302271\t100\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t101.778099060059\t3795.03295898438\t0.964107042768221\t25.3316814770532\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t109.610725402832\t3484.1552734375\t0.88513029360306\t23.2565863214358\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t159.81298828125\t3442.19995117188\t0.874471777032832\t22.9765363531256\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t188.469665527344\t3955.94091796875\t1.00498481594461\t26.4057351699112\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t195.686859130859\t3936.31909179688\t1\t26.2747603256988\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t200.988327026367\t3759.4541015625\t0.955068431671875\t25.0941941368195\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t244.78190612793\t4454.5654296875\t1.13165760341194\t29.7340323004033\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t276.721008300781\t3612.77392578125\t0.917805147786449\t24.1151102837815\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t296.157531738281\t4649.9521484375\t1.18129451398587\t31.0382302290416\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t308.5830078125\t4018.92358398438\t1.02098521239288\t26.8261417517056\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t311.841857910156\t3540.38208007812\t0.899414401504221\t23.6318978330052\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t369.124267578125\t5257.81591796875\t1.33571892810362\t35.095694698422\t1\t1\t1\t1\t1\n+"840"\t1372\t654\t657\t2\t498.169372558594\t14981.3701171875\t3.80593386049623\t100\t1\t1\t1\t1\t1\n+"843"\t778\t936\t939\t1\t118.086380004883\t7052.74462890625\t1.30776735174961\t0.359882750868549\t1\t1\t1\t1\t1\n+"843"\t778\t936\t939\t1\t119.035583496094\t4770.26611328125\t0.88453483152334\t0.243413958898567\t1\t1\t1\t1\t1\n+"843"\t778\t936\t939\t1\t137.045806884766\t1959734\t363.387061089596\t100\t1\t1\t1\t1\t1\n+"843"\t778\t936\t939\t1\t143.80290222168\t3752.88916015625\t0.695885953146795\t0.19149992601834\t1\t1\t1\t1\t1\n+"843"\t778\t936\t939\t1\t185.164245605469\t6015.66552734375\t1.11546516847666\t0.306963369893248\t1\t1\t1\t1\t1\n+"843"\t778\t936\t939\t1\t188.177719116211\t3627.47534179688\t0.672630879308387\t0.18510039330832\t1\t1\t1\t1\t1\n+"843"\t778\t936\t939\t1\t231.17024230957\t75057.1484375\t13.9176013604237\t3.82996612996968\t1\t1\t1\t1\t1\n+"843"\t778\t936\t939\t1\t473.909973144531\t4030.2705078125\t0.747319868528105\t0.205653956496775\t1\t1\t1\t1\t1\n+"843"\t1605\t936\t937\t2\t110.034912109375\t5403.05908203125\t0.126823062941211\t0.281201446822678\t1\t1\t1\t1\t1\n+"843"\t1605\t936\t937\t2\t118.08659362793\t4443.796875\t0.104306823638177\t0.231276780739239\t1\t1\t1\t1\t1\n+"843"\t1605\t936\t937\t2\t137.045791625977\t1921419.375\t45.1004304473527\t100\t1\t1\t1\t1\t1\n+"843"\t1605\t936\t937\t2\t231.170379638672\t79803.1953125\t1.87317693705879\t4.15334602902607\t1\t1\t1\t1\t1\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/filterFragSpectra_output_prec.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/filterFragSpectra_output_prec.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,324 @@\n+"grpid"\t"mz"\t"mzmin"\t"mzmax"\t"rt"\t"rtmin"\t"rtmax"\t"into"\t"intf"\t"maxo"\t"maxf"\t"i"\t"sn"\t"sample"\t"cid"\t"filename"\t"inPurity"\t"pid"\t"precurMtchID"\t"precurMtchScan"\t"precurMtchRT"\t"precurMtchMZ"\t"precurMtchPPM"\t"retentionTime"\t"fileid"\t"seqNum"\t"purity_pass_flag"\n+"12"\t112.050766766484\t112.050651550293\t112.087196350098\t67.47903\t55.2769038\t80.361672\t36223791.266206\t133522503.549415\t7158012.5\t8555976.39592391\t1\t21.054952458659\t1\t9\t"LCMSMS_2.mzML"\t1\t384\t466\t462\t64.427298\t112.050704956055\t0.55162878935702\t64.958766\t1\t466\tTRUE\n+"12"\t112.05085569128\t112.050621032715\t112.120460510254\t67.634034\t55.4140188\t80.555406\t36139265.8017591\t133395720.51942\t7426335.5\t8522973.08164079\t1\t20.3803986860233\t2\t400\t"LCMSMS_1.mzML"\t1\t1218\t472\t468\t65.376156\t112.050743103027\t1.00479600749392\t65.928894\t2\t472\tTRUE\n+"14"\t113.03541992282\t113.034698486328\t113.059997558594\t83.441172\t72.006432\t95.851296\t88462324.9597518\t348004137.88132\t18599380\t22772249.3980656\t1\t27.431622141047\t1\t11\t"LCMSMS_2.mzML"\t1\t499\t604\t600\t81.93093\t113.034736633301\t6.04491512630164\t82.463394\t1\t604\tTRUE\n+"14"\t113.035371704924\t113.034713745117\t113.059936523438\t83.64567\t72.171048\t96.141564\t92812020.095242\t366177037.564437\t20943314\t23904502.6814248\t1\t27.9839052693883\t2\t402\t"LCMSMS_1.mzML"\t1\t1321\t596\t594\t81.344292\t113.034736633301\t5.61834418239318\t81.70764\t2\t596\tTRUE\n+"14"\t113.035371704924\t113.034713745117\t113.059936523438\t83.64567\t72.171048\t96.141564\t92812020.095242\t366177037.564437\t20943314\t23904502.6814248\t1\t27.9839052693883\t2\t402\t"LCMSMS_1.mzML"\t0.472133563046185\t1380\t667\t666\t90.601068\t113.034713745117\t5.8208310964319\t90.871572\t2\t667\tFALSE\n+"17"\t116.070637437099\t116.010871887207\t116.070877075195\t47.662548\t35.592657\t59.8657836\t124086403.896805\t465322432.631286\t26501960\t30360236.2301128\t1\t24.0791686953257\t1\t13\t"LCMSMS_2.mzML"\t0.950632241095866\t226\t277\t276\t40.9547952\t116.070838928223\t1.7359353575902\t41.2252842\t1\t277\tTRUE\n+"17"\t116.070637437099\t116.010871887207\t116.070877075195\t47.662548\t35.592657\t59.8657836\t124086403.896805\t465322432.631286\t26501960\t30360236.2301128\t1\t24.0791686953257\t1\t13\t"LCMSMS_2.mzML"\t1\t281\t343\t342\t49.182402\t116.070831298828\t1.67020474130592\t49.452918\t1\t343\tTRUE\n+"17"\t116.070637437099\t116.010871887207\t116.070877075195\t47.662548\t35.592657\t59.8657836\t124086403.896805\t465322432.631286\t26501960\t30360236.2301128\t1\t24.0791686953257\t1\t13\t"LCMSMS_2.mzML"\t1\t337\t410\t408\t57.5697876\t116.070770263672\t1.14435981103166\t57.9341562\t1\t410\tTRUE\n+"17"\t116.070557825043\t116.010902404785\t116.070907592773\t47.814411\t35.7440316\t60.003786\t130337063.119246\t491415399.75458\t27555850\t32138223.0150013\t1\t24.6441102264885\t2\t404\t"LCMSMS_1.mzML"\t0.989376188689562\t1055\t277\t276\t41.0984136\t116.070816040039\t2.22463819204545\t41.3688786\t2\t277\tTRUE\n+"17"\t116.070557825043\t116.010902404785\t116.070907592773\t47.814411\t35.7440316\t60.003786\t130337063.119246\t491415399.75458\t27555850\t32138223.0150013\t1\t24.6441102264885\t2\t404\t"LCMSMS_1.mzML"\t1\t1110\t343\t342\t49.3156656\t116.070823669434\t2.29036885341395\t49.586265\t2\t343\tTRUE\n+"17"\t116.070557825043\t116.010902404785\t116.070907592773\t47.814411\t35.7440316\t60.003786\t130337063.119246\t491415399.75458\t27555850\t32138223.0150013\t1\t24.6441102264885\t2\t404\t"LCMSMS_1.mzML"\t1\t1165\t409\t408\t57.7060356\t116.070785522461\t1.96171554657148\t57.976677\t2\t409\tTRUE\n+"41"\t132.101827805179\t132.101791381836\t132.10188293457\t73.529172\t61.39704\t85.770306\t2794252073.33772\t10870343001.7354\t432419872\t700350921.737476\t1\t30.9237895882097\t1\t27\t"LCMSMS_2.mzML"\t1\t391\t475\t474\t65.949288\t132.101821899414\t0.0447061558976329\t66.21981\t1\t475\tTRUE\n+"41"\t132.101827805179\t132.101791381836\t132.10188293457\t73.529172\t61.39704\t85.770306\t2794252073.33772\t10870343001.7354\t432419872\t700350921.737476\t1\t30.9237895882097\t1\t27\t"LCMSMS_2.mzML"\t1\t446\t541\t540\t74.297424\t132.101867675781\t0.301817188616646\t74.567904\t1\t541\tTRUE\n+"41"\t132.101827805179\t132.101791381836\t132.10188293457\t73.529172\t61.39704\t85.770306\t2794252073.33772\t10870343001.7354\t432419872\t700350921.737476\t1\t30.9237895882097\t1\t27\t"LCMSMS_2.mzML"\t1\t501\t607\t606\t82'..b'4711.0742877\t195241268.75592\t14374106\t12850193.8354307\t1\t21.2071228333724\t1\t371\t"LCMSMS_2.mzML"\t1\t465\t563\t558\t76.520544\t461.209899902344\t6.04192381657049\t77.141778\t1\t563\tTRUE\n+"757"\t461.20738152051\t461.121826171875\t461.243560791016\t77.474424\t65.376156\t89.831544\t48607882.314214\t192672537.990574\t14159047\t12716867.2850009\t1\t20.5600686941203\t2\t761\t"LCMSMS_1.mzML"\t1\t1299\t569\t564\t77.474424\t461.209899902344\t5.460410945608\t78.102018\t2\t569\tTRUE\n+"759"\t462.22122959389\t462.213439941406\t462.291839599609\t57.7060356\t44.7995376\t75.972048\t38559454.0832874\t105979165.236253\t3445839.75\t5926579.6352243\t1\t10.2307809194678\t2\t762\t"LCMSMS_1.mzML"\t0.944176192726551\t1187\t435\t432\t60.766158\t462.218811035156\t5.23247003559527\t61.226112\t2\t435\tTRUE\n+"787"\t476.190702761819\t476.186126708984\t476.307098388672\t81.162672\t69.717042\t92.725812\t39151803.0473944\t118893746.090445\t7816689\t8198001.40019319\t1\t14.9845576620757\t1\t378\t"LCMSMS_2.mzML"\t0.977294138555063\t474\t574\t570\t78.035046\t476.186828613281\t8.13570805892727\t78.58677\t1\t574\tTRUE\n+"787"\t476.190794182677\t476.186218261719\t476.307495117188\t81.344292\t69.864534\t92.927058\t43745001.5410773\t135433069.148731\t8875996\t9304027.49811656\t1\t15.612354791168\t2\t768\t"LCMSMS_1.mzML"\t0.917917041077806\t1303\t574\t570\t78.227304\t476.186981201172\t8.00725581423595\t78.779022\t2\t574\tTRUE\n+"787"\t476.190794182677\t476.186218261719\t476.307495117188\t81.344292\t69.864534\t92.927058\t43745001.5410773\t135433069.148731\t8875996\t9304027.49811656\t1\t15.612354791168\t2\t768\t"LCMSMS_1.mzML"\t0.990314571321696\t1309\t581\t576\t78.998916\t476.187042236328\t7.87908207170328\t79.648392\t2\t581\tTRUE\n+"812"\t487.181176540989\t487.099060058594\t487.239410400391\t66.710418\t54.5086626\t79.585674\t58453273.9503532\t230378509.09492\t15813294\t14998690.3403142\t1\t19.4416133244468\t1\t384\t"LCMSMS_2.mzML"\t1\t394\t478\t474\t65.949288\t487.177612304688\t7.31603861859596\t66.493134\t1\t478\tTRUE\n+"812"\t487.180877999963\t487.099700927734\t487.239501953125\t66.865908\t54.6427758\t78.998916\t60132074.4709007\t238189012.918308\t18110170\t15528706.5784369\t1\t19.1064097764383\t2\t774\t"LCMSMS_1.mzML"\t1\t1224\t479\t474\t66.147648\t487.177856445312\t6.20212078776047\t66.74139\t2\t479\tTRUE\n+"830"\t494.196757645669\t494.119018554688\t494.198516845703\t49.9356528\t37.8964158\t62.153292\t31096636.998985\t121560345.75829\t6061495.5\t8000920.55155143\t1\t19.2246142395834\t1\t387\t"LCMSMS_2.mzML"\t1\t280\t341\t336\t48.4095336\t494.197631835938\t1.76891138083971\t49.060251\t1\t341\tTRUE\n+"830"\t494.1970608933\t494.119293212891\t494.197875976562\t50.0837946\t38.0417766\t62.309778\t31975460.900009\t125089224.818786\t5749075.5\t8239138.02501223\t1\t18.9671855740286\t2\t776\t"LCMSMS_1.mzML"\t1\t1112\t345\t342\t49.3156656\t494.197631835938\t1.15529347093956\t49.7757558\t2\t345\tTRUE\n+"840"\t498.169308539313\t498.16845703125\t498.28955078125\t81.162672\t68.984166\t93.504684\t46040504.6258466\t180736904.384221\t9105023\t11919892.2978446\t1\t18.9934607564632\t1\t389\t"LCMSMS_2.mzML"\t1\t479\t580\t576\t78.808182\t498.168731689453\t1.15793937994546\t79.36215\t1\t580\tTRUE\n+"840"\t498.169196251216\t498.168304443359\t498.216522216797\t81.344292\t69.864534\t93.704046\t47195241.5238887\t185121008.239345\t9710354\t12214248.0689462\t1\t17.5782472187331\t2\t778\t"LCMSMS_1.mzML"\t1\t1313\t586\t582\t79.776168\t498.168914794922\t0.564981329073345\t80.330904\t2\t586\tTRUE\n+"840"\t498.169196251216\t498.168304443359\t498.216522216797\t81.344292\t69.864534\t93.704046\t47195241.5238887\t185121008.239345\t9710354\t12214248.0689462\t1\t17.5782472187331\t2\t778\t"LCMSMS_1.mzML"\t1\t1372\t657\t654\t89.058666\t498.169708251953\t1.02776474439097\t89.521512\t2\t657\tTRUE\n+"843"\t499.250501059464\t499.216003417969\t499.255126953125\t129.271086\t116.806434\t134.058318\t55312967.4069412\t179331694.489759\t13120593\t14382850.9535263\t1\t18.1627514816931\t1\t391\t"LCMSMS_2.mzML"\t1\t778\t939\t936\t126.186204\t499.250396728516\t0.208975150626037\t126.64716\t1\t939\tTRUE\n+"843"\t499.250391260917\t499.216522216797\t499.254547119141\t129.525558\t116.993448\t134.305698\t60960211.430872\t197064903.836068\t13479257\t15776334.7230698\t1\t17.5991745757\t2\t780\t"LCMSMS_1.mzML"\t1\t1605\t937\t936\t126.441198\t499.250396728516\t0.0109516161922676\t126.711816\t2\t937\tTRUE\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/flagRemove_input.RData
b
Binary file test-data/flagRemove_input.RData has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/flagRemove_output.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/flagRemove_output.tsv Wed Nov 27 14:23:10 2019 -0500
b
@@ -0,0 +1,7 @@
+"grpid" "ID" "mzmed" "mzmin" "mzmax" "rtmed" "rtmin" "rtmax" "npeaks" "KO" "WT" "ko15" "ko16" "ko18" "wt19" "wt21" "wt22" "KO_median_I" "WT_median_I" "KO_RSD_I" "WT_RSD_I" "KO_coverage" "WT_coverage" "KO_RSD_RT" "WT_RSD_RT" "rsd_all_RT" "grpid.1" "KO_valid" "WT_valid" "all_sample_valid" "mzmin_full" "mzmax_full" "rtmin_full" "rtmax_full"
+"1" "1" 205 205 205 2794.024 2793.436 2803.044 3 0 3 NA NA NA 1507943.06947222 1533767.074875 1354004.93486208 NA 1507943.06947222 NA 6.63321894286696 0 1 NA 0.19255594131829 0.19255594131829 1 0 1 1 205 205 2767.512 2816.3
+"2" "2" 231 231 231 2519.839 2504.508 2535.473 6 1 3 NA NA 30766.3350000011 45103.2999999989 104989.362833335 49776.3899999999 30766.3350000011 49776.3899999999 NA 49.9951594827002 0.333333333333333 1 NA 0.360049078987311 0.432545161192324 2 0 1 1 231 231 2507.963 2514.738
+"3" "3" 402.200012207031 402.200012207031 402.200012207031 3598.551 3592.212 3610.036 4 1 3 NA NA 14554.4999999997 37458.7453333329 91785.7281052629 142007.379692308 14554.4999999997 91785.7281052629 NA 57.8293736085665 0.333333333333333 1 NA 0.251337522585405 0.206331444617903 3 0 1 1 402.200012207031 402.200012207031 3563.503 3597.137
+"4" "4" 449.100006103516 449.100006103516 449.100006103516 2667.26 2664.638 2676.652 3 0 3 NA NA NA 6663.76999999991 11221.0499999998 6830.35200000006 NA 6830.35200000006 NA 31.3702198972974 0 1 NA 0.236631537850627 0.236631537850627 4 0 1 1 449.100006103516 449.100006103516 2659.233 2670.393
+"5" "5" 564.200012207031 564.200012207031 564.200012207031 3498.002 3491.993 3507.349 4 0 3 NA NA NA 149980.21 87237.7950000002 160589.344999999 NA 149980.21 NA 29.896461605479 0 1 NA 0.135256683436928 0.135256683436928 5 0 1 1 564.200012207031 564.200012207031 3473.214 3501.034
+"6" "6" 586.299987792969 586.299987792969 586.299987792969 3308.894 3308.249 3310.396 3 0 3 NA NA NA 10504.2799999998 7491.65500000026 12363.4999999997 NA 10504.2799999998 NA 24.294650028749 0 1 NA 0.0332903660058522 0.0332903660058522 6 0 1 1 586.299987792969 586.299987792969 3304.199 3312.024
b
diff -r 000000000000 -r ab65999a5430 test-data/frag4feature_output.RData
b
Binary file test-data/frag4feature_output.RData has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/frag4feature_output.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/frag4feature_output.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,324 @@\n+"grpid"\t"mz"\t"mzmin"\t"mzmax"\t"rt"\t"rtmin"\t"rtmax"\t"into"\t"intf"\t"maxo"\t"maxf"\t"i"\t"sn"\t"sample"\t"cid"\t"filename"\t"inPurity"\t"pid"\t"precurMtchID"\t"precurMtchScan"\t"precurMtchRT"\t"precurMtchMZ"\t"precurMtchPPM"\t"retentionTime"\t"fileid"\t"seqNum"\n+"12"\t112.050766766484\t112.050651550293\t112.087196350098\t67.47903\t55.2769038\t80.361672\t36223791.266206\t133522503.549415\t7158012.5\t8555976.39592391\t1\t21.054952458659\t1\t9\t"LCMSMS_2.mzML"\t1\t384\t466\t462\t64.427298\t112.050704956055\t0.55162878935702\t64.958766\t1\t466\n+"12"\t112.05085569128\t112.050621032715\t112.120460510254\t67.634034\t55.4140188\t80.555406\t36139265.8017591\t133395720.51942\t7426335.5\t8522973.08164079\t1\t20.3803986860233\t2\t400\t"LCMSMS_1.mzML"\t1\t1218\t472\t468\t65.376156\t112.050743103027\t1.00479600749392\t65.928894\t2\t472\n+"14"\t113.03541992282\t113.034698486328\t113.059997558594\t83.441172\t72.006432\t95.851296\t88462324.9597518\t348004137.88132\t18599380\t22772249.3980656\t1\t27.431622141047\t1\t11\t"LCMSMS_2.mzML"\t1\t499\t604\t600\t81.93093\t113.034736633301\t6.04491512630164\t82.463394\t1\t604\n+"14"\t113.035371704924\t113.034713745117\t113.059936523438\t83.64567\t72.171048\t96.141564\t92812020.095242\t366177037.564437\t20943314\t23904502.6814248\t1\t27.9839052693883\t2\t402\t"LCMSMS_1.mzML"\t1\t1321\t596\t594\t81.344292\t113.034736633301\t5.61834418239318\t81.70764\t2\t596\n+"14"\t113.035371704924\t113.034713745117\t113.059936523438\t83.64567\t72.171048\t96.141564\t92812020.095242\t366177037.564437\t20943314\t23904502.6814248\t1\t27.9839052693883\t2\t402\t"LCMSMS_1.mzML"\t0.472133563046185\t1380\t667\t666\t90.601068\t113.034713745117\t5.8208310964319\t90.871572\t2\t667\n+"17"\t116.070637437099\t116.010871887207\t116.070877075195\t47.662548\t35.592657\t59.8657836\t124086403.896805\t465322432.631286\t26501960\t30360236.2301128\t1\t24.0791686953257\t1\t13\t"LCMSMS_2.mzML"\t0.950632241095866\t226\t277\t276\t40.9547952\t116.070838928223\t1.7359353575902\t41.2252842\t1\t277\n+"17"\t116.070637437099\t116.010871887207\t116.070877075195\t47.662548\t35.592657\t59.8657836\t124086403.896805\t465322432.631286\t26501960\t30360236.2301128\t1\t24.0791686953257\t1\t13\t"LCMSMS_2.mzML"\t1\t281\t343\t342\t49.182402\t116.070831298828\t1.67020474130592\t49.452918\t1\t343\n+"17"\t116.070637437099\t116.010871887207\t116.070877075195\t47.662548\t35.592657\t59.8657836\t124086403.896805\t465322432.631286\t26501960\t30360236.2301128\t1\t24.0791686953257\t1\t13\t"LCMSMS_2.mzML"\t1\t337\t410\t408\t57.5697876\t116.070770263672\t1.14435981103166\t57.9341562\t1\t410\n+"17"\t116.070557825043\t116.010902404785\t116.070907592773\t47.814411\t35.7440316\t60.003786\t130337063.119246\t491415399.75458\t27555850\t32138223.0150013\t1\t24.6441102264885\t2\t404\t"LCMSMS_1.mzML"\t0.989376188689562\t1055\t277\t276\t41.0984136\t116.070816040039\t2.22463819204545\t41.3688786\t2\t277\n+"17"\t116.070557825043\t116.010902404785\t116.070907592773\t47.814411\t35.7440316\t60.003786\t130337063.119246\t491415399.75458\t27555850\t32138223.0150013\t1\t24.6441102264885\t2\t404\t"LCMSMS_1.mzML"\t1\t1110\t343\t342\t49.3156656\t116.070823669434\t2.29036885341395\t49.586265\t2\t343\n+"17"\t116.070557825043\t116.010902404785\t116.070907592773\t47.814411\t35.7440316\t60.003786\t130337063.119246\t491415399.75458\t27555850\t32138223.0150013\t1\t24.6441102264885\t2\t404\t"LCMSMS_1.mzML"\t1\t1165\t409\t408\t57.7060356\t116.070785522461\t1.96171554657148\t57.976677\t2\t409\n+"41"\t132.101827805179\t132.101791381836\t132.10188293457\t73.529172\t61.39704\t85.770306\t2794252073.33772\t10870343001.7354\t432419872\t700350921.737476\t1\t30.9237895882097\t1\t27\t"LCMSMS_2.mzML"\t1\t391\t475\t474\t65.949288\t132.101821899414\t0.0447061558976329\t66.21981\t1\t475\n+"41"\t132.101827805179\t132.101791381836\t132.10188293457\t73.529172\t61.39704\t85.770306\t2794252073.33772\t10870343001.7354\t432419872\t700350921.737476\t1\t30.9237895882097\t1\t27\t"LCMSMS_2.mzML"\t1\t446\t541\t540\t74.297424\t132.101867675781\t0.301817188616646\t74.567904\t1\t541\n+"41"\t132.101827805179\t132.101791381836\t132.10188293457\t73.529172\t61.39704\t85.770306\t2794252073.33772\t10870343001.7354\t432419872\t700350921.737476\t1\t30.9237895882097\t1\t27\t"LCMSMS_2.mzML"\t1\t501\t607\t606\t82.686066\t132.101852416992\t0.186309407111886\t82.956534\t1\t607\n+"41"\t132.101827230045\t132'..b'13324101\t461.110168457031\t461.2431640625\t76.520544\t65.179668\t88.866054\t48904711.0742877\t195241268.75592\t14374106\t12850193.8354307\t1\t21.2071228333724\t1\t371\t"LCMSMS_2.mzML"\t1\t465\t563\t558\t76.520544\t461.209899902344\t6.04192381657049\t77.141778\t1\t563\n+"757"\t461.20738152051\t461.121826171875\t461.243560791016\t77.474424\t65.376156\t89.831544\t48607882.314214\t192672537.990574\t14159047\t12716867.2850009\t1\t20.5600686941203\t2\t761\t"LCMSMS_1.mzML"\t1\t1299\t569\t564\t77.474424\t461.209899902344\t5.460410945608\t78.102018\t2\t569\n+"759"\t462.22122959389\t462.213439941406\t462.291839599609\t57.7060356\t44.7995376\t75.972048\t38559454.0832874\t105979165.236253\t3445839.75\t5926579.6352243\t1\t10.2307809194678\t2\t762\t"LCMSMS_1.mzML"\t0.944176192726551\t1187\t435\t432\t60.766158\t462.218811035156\t5.23247003559527\t61.226112\t2\t435\n+"787"\t476.190702761819\t476.186126708984\t476.307098388672\t81.162672\t69.717042\t92.725812\t39151803.0473944\t118893746.090445\t7816689\t8198001.40019319\t1\t14.9845576620757\t1\t378\t"LCMSMS_2.mzML"\t0.977294138555063\t474\t574\t570\t78.035046\t476.186828613281\t8.13570805892727\t78.58677\t1\t574\n+"787"\t476.190794182677\t476.186218261719\t476.307495117188\t81.344292\t69.864534\t92.927058\t43745001.5410773\t135433069.148731\t8875996\t9304027.49811656\t1\t15.612354791168\t2\t768\t"LCMSMS_1.mzML"\t0.917917041077806\t1303\t574\t570\t78.227304\t476.186981201172\t8.00725581423595\t78.779022\t2\t574\n+"787"\t476.190794182677\t476.186218261719\t476.307495117188\t81.344292\t69.864534\t92.927058\t43745001.5410773\t135433069.148731\t8875996\t9304027.49811656\t1\t15.612354791168\t2\t768\t"LCMSMS_1.mzML"\t0.990314571321696\t1309\t581\t576\t78.998916\t476.187042236328\t7.87908207170328\t79.648392\t2\t581\n+"812"\t487.181176540989\t487.099060058594\t487.239410400391\t66.710418\t54.5086626\t79.585674\t58453273.9503532\t230378509.09492\t15813294\t14998690.3403142\t1\t19.4416133244468\t1\t384\t"LCMSMS_2.mzML"\t1\t394\t478\t474\t65.949288\t487.177612304688\t7.31603861859596\t66.493134\t1\t478\n+"812"\t487.180877999963\t487.099700927734\t487.239501953125\t66.865908\t54.6427758\t78.998916\t60132074.4709007\t238189012.918308\t18110170\t15528706.5784369\t1\t19.1064097764383\t2\t774\t"LCMSMS_1.mzML"\t1\t1224\t479\t474\t66.147648\t487.177856445312\t6.20212078776047\t66.74139\t2\t479\n+"830"\t494.196757645669\t494.119018554688\t494.198516845703\t49.9356528\t37.8964158\t62.153292\t31096636.998985\t121560345.75829\t6061495.5\t8000920.55155143\t1\t19.2246142395834\t1\t387\t"LCMSMS_2.mzML"\t1\t280\t341\t336\t48.4095336\t494.197631835938\t1.76891138083971\t49.060251\t1\t341\n+"830"\t494.1970608933\t494.119293212891\t494.197875976562\t50.0837946\t38.0417766\t62.309778\t31975460.900009\t125089224.818786\t5749075.5\t8239138.02501223\t1\t18.9671855740286\t2\t776\t"LCMSMS_1.mzML"\t1\t1112\t345\t342\t49.3156656\t494.197631835938\t1.15529347093956\t49.7757558\t2\t345\n+"840"\t498.169308539313\t498.16845703125\t498.28955078125\t81.162672\t68.984166\t93.504684\t46040504.6258466\t180736904.384221\t9105023\t11919892.2978446\t1\t18.9934607564632\t1\t389\t"LCMSMS_2.mzML"\t1\t479\t580\t576\t78.808182\t498.168731689453\t1.15793937994546\t79.36215\t1\t580\n+"840"\t498.169196251216\t498.168304443359\t498.216522216797\t81.344292\t69.864534\t93.704046\t47195241.5238887\t185121008.239345\t9710354\t12214248.0689462\t1\t17.5782472187331\t2\t778\t"LCMSMS_1.mzML"\t1\t1313\t586\t582\t79.776168\t498.168914794922\t0.564981329073345\t80.330904\t2\t586\n+"840"\t498.169196251216\t498.168304443359\t498.216522216797\t81.344292\t69.864534\t93.704046\t47195241.5238887\t185121008.239345\t9710354\t12214248.0689462\t1\t17.5782472187331\t2\t778\t"LCMSMS_1.mzML"\t1\t1372\t657\t654\t89.058666\t498.169708251953\t1.02776474439097\t89.521512\t2\t657\n+"843"\t499.250501059464\t499.216003417969\t499.255126953125\t129.271086\t116.806434\t134.058318\t55312967.4069412\t179331694.489759\t13120593\t14382850.9535263\t1\t18.1627514816931\t1\t391\t"LCMSMS_2.mzML"\t1\t778\t939\t936\t126.186204\t499.250396728516\t0.208975150626037\t126.64716\t1\t939\n+"843"\t499.250391260917\t499.216522216797\t499.254547119141\t129.525558\t116.993448\t134.305698\t60960211.430872\t197064903.836068\t13479257\t15776334.7230698\t1\t17.5991745757\t2\t780\t"LCMSMS_1.mzML"\t1\t1605\t937\t936\t126.441198\t499.250396728516\t0.0109516161922676\t126.711816\t2\t937\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/metab_compound_subset.sqlite
b
Binary file test-data/metab_compound_subset.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/purityA_output.RData
b
Binary file test-data/purityA_output.RData has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/purityA_output.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/purityA_output.tsv Wed Nov 27 14:23:10 2019 -0500
b
b'@@ -0,0 +1,1659 @@\n+"pid"\t"fileid"\t"seqNum"\t"acquisitionNum"\t"precursorIntensity"\t"precursorMZ"\t"precursorRT"\t"precursorScanNum"\t"id"\t"filename"\t"retentionTime"\t"precursorNearest"\t"aMz"\t"aPurity"\t"apkNm"\t"iMz"\t"iPurity"\t"ipkNm"\t"inPkNm"\t"inPurity"\n+1\t"1"\t7\t7\t2307227.25\t391.283760714446\t2.7169029\t6\t7\t"LCMSMS_2.mzML"\t2.987508\t6\t391.283905029297\t1\t1\t391.283905029297\t1\t1\t1\t1\n+2\t"1"\t8\t8\t1477607.75\t149.02325426281\t2.7169029\t6\t8\t"LCMSMS_2.mzML"\t3.08067606\t6\t149.023284912109\t0.863727802953337\t2\t149.023284912109\t0.863727802953337\t2\t2\t0.858979132915935\n+3\t"1"\t9\t9\t1323571.125\t135.101532798642\t2.7169029\t6\t9\t"LCMSMS_2.mzML"\t3.17349\t6\t135.1015625\t0.754018193004879\t4\t135.1015625\t0.754018193004879\t4\t4\t0.752804381466648\n+4\t"1"\t10\t10\t1184293.75\t219.174200386646\t2.7169029\t6\t10\t"LCMSMS_2.mzML"\t3.26624796\t12\t219.174179077148\t0.732562161401867\t3\t219.174179077148\t0.732562161401867\t3\t3\t0.738959452730752\n+5\t"1"\t11\t11\t982792.625\t136.02\t2.7169029\t6\t11\t"LCMSMS_2.mzML"\t3.35911392\t12\t136.021499633789\t0.81713873333528\t4\t136.021499633789\t0.81713873333528\t4\t3\t0.823232032426933\n+6\t"1"\t13\t13\t849365.875\t235.169087811969\t3.5918919\t12\t13\t"LCMSMS_2.mzML"\t3.86249802\t12\t235.169036865234\t0.842792815315614\t2\t235.169036865234\t0.842792815315614\t2\t2\t0.843211278870246\n+7\t"1"\t14\t14\t706804.5\t158.153887744523\t3.5918919\t12\t14\t"LCMSMS_2.mzML"\t3.95523402\t12\t158.153869628906\t0.811448011426701\t2\t158.153869628906\t0.811448011426701\t2\t2\t0.81443178987688\n+8\t"1"\t15\t15\t669338.375\t171.149079510776\t3.5918919\t12\t15\t"LCMSMS_2.mzML"\t4.047975\t12\t171.149063110352\t0.766303662616746\t3\t171.149063110352\t0.766303662616746\t3\t3\t0.770556368013789\n+9\t"1"\t16\t16\t650086.625\t371.100940415758\t3.5918919\t12\t16\t"LCMSMS_2.mzML"\t4.142739\t18\t371.100860595703\t1\t1\t371.100860595703\t1\t1\t1\t1\n+10\t"1"\t17\t17\t555993.5625\t163.132748084438\t3.5918919\t12\t17\t"LCMSMS_2.mzML"\t4.23547908\t18\t163.132705688477\t0.716000538894822\t5\t163.132705688477\t0.716000538894822\t5\t5\t0.714400157383296\n+11\t"1"\t19\t19\t522140.46875\t279.16\t4.46726694\t18\t19\t"LCMSMS_2.mzML"\t4.73789808\t18\t279.158782958984\t0.778745945763546\t2\t279.158782958984\t0.778745945763546\t2\t2\t0.781940110910545\n+12\t"1"\t20\t20\t528064.375\t187.126259769718\t4.46726694\t18\t20\t"LCMSMS_2.mzML"\t4.83060906\t18\t187.126220703125\t0.664328071501583\t3\t187.126220703125\t0.664328071501583\t3\t3\t0.661519589836662\n+13\t"1"\t21\t21\t467025.8125\t199.169150732989\t4.46726694\t18\t21\t"LCMSMS_2.mzML"\t4.92348096\t18\t199.169128417969\t0.625379711668664\t6\t199.169128417969\t0.625379711668664\t6\t3\t0.671735350831275\n+14\t"1"\t22\t22\t454623.9375\t202.179972369132\t4.46726694\t18\t22\t"LCMSMS_2.mzML"\t5.0162229\t24\t202.179992675781\t0.813432936059855\t3\t202.179992675781\t0.813432936059855\t3\t3\t0.811188590738086\n+15\t"1"\t23\t23\t398638.59375\t195.087538239222\t4.46726694\t18\t23\t"LCMSMS_2.mzML"\t5.10911106\t24\t195.08757019043\t0.427238293287608\t7\t195.08757019043\t0.427238293287608\t7\t7\t0.42561698809495\n+16\t"1"\t25\t25\t469463.3125\t114.091558259035\t5.33325996\t24\t25\t"LCMSMS_2.mzML"\t5.68774008\t24\t114.09156036377\t0.922266019059352\t2\t114.09156036377\t0.922266019059352\t2\t2\t0.921739255221912\n+17\t"1"\t26\t26\t342817.1875\t200.02\t5.33325996\t24\t26\t"LCMSMS_2.mzML"\t5.78048988\t24\t200.022872924805\t0.724091075468091\t5\t200.022872924805\t0.724091075468091\t5\t5\t0.716395444423535\n+18\t"1"\t27\t27\t412834.21875\t195.02\t5.33325996\t24\t27\t"LCMSMS_2.mzML"\t5.87323902\t24\t195.08757019043\t0.427238293287608\t7\t195.08757019043\t0.427238293287608\t7\t7\t0.422616244430677\n+19\t"1"\t28\t28\t388953.65625\t329\t5.33325996\t24\t28\t"LCMSMS_2.mzML"\t5.96697396\t30\t329.004852294922\t1\t1\t329.004852294922\t1\t1\t1\t1\n+20\t"1"\t29\t29\t363111.84375\t327.01\t5.33325996\t24\t29\t"LCMSMS_2.mzML"\t6.0607398\t30\t327.007751464844\t1\t1\t327.007751464844\t1\t1\t1\t1\n+21\t"1"\t31\t31\t337509.625\t209.153442494811\t6.2918862\t30\t31\t"LCMSMS_2.mzML"\t6.5625\t30\t209.153457641602\t0.719647135421531\t3\t209.153457641602\t0.719647135421531\t3\t4\t0.708639826368797\n+22\t"1"\t32\t32\t316424\t136.94\t6.2918862\t30\t32\t"LCMSMS_2.mzML"\t6.6570792\t30\t136.940078735352\t0.544384631839566\t7\t136.940078735352\t0.544384631839566\t7\t6\t0.554115994578321\n+23\t"1"\t33\t33\t291629.4375\t151.11\t6.2918862\t30\t33\t"LCMSM'..b'304688\t966\t970\t"LCMSMS_1.mzML"\t130.920672\t972\t269.12548828125\t0.141370053054037\t3\t269.087615966797\t0.813617514939145\t3\t3\t0.829650086646885\n+1634\t"2"\t971\t971\t155505.515625\t229.05\t130.304688\t966\t971\t"LCMSMS_1.mzML"\t131.013402\t972\t229.047210693359\t0.342181004056544\t4\t229.154266357422\t0.50685217799906\t4\t5\t0.507238843865549\n+1635\t"2"\t973\t973\t845536.6875\t327.140534136341\t131.148558\t972\t973\t"LCMSMS_1.mzML"\t131.41923\t972\t327.140594482422\t0.727993884858406\t2\t327.140594482422\t0.727993884858406\t2\t3\t0.704180375416617\n+1636\t"2"\t974\t974\t5866483\t318.201775150359\t131.148558\t972\t974\t"LCMSMS_1.mzML"\t131.512914\t972\t318.201873779297\t1\t1\t318.201873779297\t1\t1\t1\t1\n+1637\t"2"\t975\t975\t845092.0625\t536.25\t131.148558\t972\t975\t"LCMSMS_1.mzML"\t131.60967\t972\tNA\t0\tNA\tNA\t0\tNA\tNA\t0\n+1638\t"2"\t976\t976\t614545.375\t345.21\t131.148558\t972\t976\t"LCMSMS_1.mzML"\t131.704404\t978\t345.212768554688\t1\t1\t345.212768554688\t1\t1\t2\t0.976986759297886\n+1639\t"2"\t977\t977\t469308.46875\t289.22\t131.148558\t972\t977\t"LCMSMS_1.mzML"\t131.798166\t978\t289.222900390625\t1\t1\t289.222900390625\t1\t1\t1\t1\n+1640\t"2"\t979\t979\t347938.1875\t324.1314685619\t131.936568\t978\t979\t"LCMSMS_1.mzML"\t132.207222\t978\t324.131439208984\t1\t1\t324.131439208984\t1\t1\t1\t1\n+1641\t"2"\t980\t980\t38274372\t137.045632108302\t131.936568\t978\t980\t"LCMSMS_1.mzML"\t132.282558\t978\t137.045623779297\t1\t1\t137.045623779297\t1\t1\t1\t1\n+1642\t"2"\t981\t981\t2197110.5\t537.168354555235\t131.936568\t978\t981\t"LCMSMS_1.mzML"\t132.379302\t978\tNA\t0\tNA\tNA\t0\tNA\tNA\t0\n+1643\t"2"\t982\t982\t6986065\t241.154271494938\t131.936568\t978\t982\t"LCMSMS_1.mzML"\t132.47304\t984\t241.154266357422\t1\t1\t241.154266357422\t1\t1\t1\t1\n+1644\t"2"\t983\t983\t202176\t409.17\t131.936568\t978\t983\t"LCMSMS_1.mzML"\t132.567798\t984\t409.170837402344\t0.871738208530276\t2\t409.170837402344\t0.871738208530276\t2\t2\t0.884648151922212\n+1645\t"2"\t985\t985\t3128515\t215.138771219374\t132.71007\t984\t985\t"LCMSMS_1.mzML"\t132.9807\t984\t215.138793945312\t1\t1\t215.138793945312\t1\t1\t1\t1\n+1646\t"2"\t986\t986\t3218578.75\t334.19670553683\t132.71007\t984\t986\t"LCMSMS_1.mzML"\t133.07541\t984\t334.196746826172\t0.926246562183373\t2\t334.196746826172\t0.926246562183373\t2\t1\t0.950831041455582\n+1647\t"2"\t987\t987\t2338164\t391.283610514295\t132.71007\t984\t987\t"LCMSMS_1.mzML"\t133.170168\t984\t391.283660888672\t1\t1\t391.283660888672\t1\t1\t1\t1\n+1648\t"2"\t988\t988\t2184468.25\t290.17\t132.71007\t984\t988\t"LCMSMS_1.mzML"\t133.263768\t990\t290.170593261719\t1\t1\t290.170593261719\t1\t1\t1\t1\n+1649\t"2"\t989\t989\t1960551.25\t356.157702076678\t132.71007\t984\t989\t"LCMSMS_1.mzML"\t133.358538\t990\t356.157745361328\t0.738759984327311\t3\t356.157745361328\t0.738759984327311\t3\t3\t0.735813941108667\n+1650\t"2"\t991\t991\t2031393.5\t304.186232352971\t133.503804\t990\t991\t"LCMSMS_1.mzML"\t133.774308\t990\t304.186279296875\t0.909007498607307\t2\t304.186279296875\t0.909007498607307\t2\t2\t0.911376543536852\n+1651\t"2"\t992\t992\t1841302.125\t340.183823206705\t133.503804\t990\t992\t"LCMSMS_1.mzML"\t133.86903\t990\t340.183868408203\t0.921859692577257\t2\t340.183868408203\t0.921859692577257\t2\t2\t0.929077630476246\n+1652\t"2"\t993\t993\t1325456.625\t389.2\t133.503804\t990\t993\t"LCMSMS_1.mzML"\t133.963806\t990\t389.202545166016\t1\t1\t389.202545166016\t1\t1\t1\t1\n+1653\t"2"\t994\t994\t1091136.25\t342.14\t133.503804\t990\t994\t"LCMSMS_1.mzML"\t134.058522\t996\t342.142120361328\t1\t1\t342.142120361328\t1\t1\t1\t1\n+1654\t"2"\t995\t995\t997170.5625\t483.314830443476\t133.503804\t990\t995\t"LCMSMS_1.mzML"\t134.1543\t996\t483.31494140625\t0.706612336062495\t3\t483.31494140625\t0.706612336062495\t3\t3\t0.711714458623578\n+1655\t"2"\t997\t997\t3670711.25\t269.16\t134.305698\t996\t997\t"LCMSMS_1.mzML"\t134.57631\t996\t269.087707519531\t0.504195818495762\t3\t269.087707519531\t0.504195818495762\t3\t3\t0.504195818495762\n+1656\t"2"\t998\t998\t96664.6484375\t575.124300805729\t134.305698\t996\t998\t"LCMSMS_1.mzML"\t134.673036\t996\tNA\t0\tNA\tNA\t0\tNA\tNA\t0\n+1657\t"2"\t999\t999\t71747.3984375\t118.08638548293\t134.305698\t996\t999\t"LCMSMS_1.mzML"\t134.765052\t996\t118.086380004883\t1\t1\t118.086380004883\t1\t1\t1\t1\n+1658\t"2"\t1000\t1000\t1000603.0625\t359.228373720717\t134.305698\t996\t1000\t"LCMSMS_1.mzML"\t134.859774\t996\t359.228363037109\t0.929710258388609\t2\t359.228363037109\t0.929710258388609\t2\t2\t0.929710258388609\n'
b
diff -r 000000000000 -r ab65999a5430 test-data/spectralMatching_db_with_spectral_matching.sqlite
b
Binary file test-data/spectralMatching_db_with_spectral_matching.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/spectralMatching_db_with_spectral_matching_instrumentTypes.sqlite
b
Binary file test-data/spectralMatching_db_with_spectral_matching_instrumentTypes.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/spectralMatching_input_massbank_test.sqlite
b
Binary file test-data/spectralMatching_input_massbank_test.sqlite has changed
b
diff -r 000000000000 -r ab65999a5430 test-data/spectralMatching_matched_results.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/spectralMatching_matched_results.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,3 @@
+"pid" "grpid" "mz" "mzmin" "mzmax" "rt" "rtmin" "rtmax" "npeaks" "sample" "LCMSMS_2" "LCMSMS_1" "LCMS_2" "LCMS_1" "grp_name" "lpid" "mid" "dpc" "rdpc" "cdpc" "mcount" "allcount" "mpercent" "library_rt" "query_rt" "rtdiff" "library_precursor_mz" "query_precursor_mz" "library_precursor_ion_purity" "query_precursor_ion_purity" "library_accession" "library_precursor_type" "library_entry_name" "inchikey" "library_source_name" "library_compound_name" "query_entry_name"
+1663 14 113.035283604395 113.035156497997 113.03541992282 80.50932 77.16429 83.64567 4 4 88462324.9597518 92812020.095242 77298864.2688328 77198465.9156761 "M113T81" 56653 1 0.942265461847349 0.996860823822942 0.753812369477879 1 4 0.25 NA 80.50932 NA "113.03508" 113.035283604395 NA 1 "PR100037" "[M+H]+" "Uracil" "ISAKRJDGNUQOIC-UHFFFAOYSA-N" "massbank" "Uracil" NA
+1664 14 113.035283604395 113.035156497997 113.03541992282 80.50932 77.16429 83.64567 4 4 88462324.9597518 92812020.095242 77298864.2688328 77198465.9156761 "M113T81" 56653 2 0.942265461847349 0.996860823822942 0.753812369477879 1 4 0.25 NA 80.50932 NA "113.03508" 113.035283604395 NA 1 "PR100037" "[M+H]+" "Uracil" "ISAKRJDGNUQOIC-UHFFFAOYSA-N" "massbank" "Uracil" NA
b
diff -r 000000000000 -r ab65999a5430 test-data/spectralMatching_matched_results_instrumentTypes.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/spectralMatching_matched_results_instrumentTypes.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,3 @@
+"pid" "grpid" "mz" "mzmin" "mzmax" "rt" "rtmin" "rtmax" "npeaks" "sample" "LCMSMS_2" "LCMSMS_1" "LCMS_2" "LCMS_1" "grp_name" "lpid" "mid" "dpc" "rdpc" "cdpc" "mcount" "allcount" "mpercent" "library_rt" "query_rt" "rtdiff" "library_precursor_mz" "query_precursor_mz" "library_precursor_ion_purity" "query_precursor_ion_purity" "library_accession" "library_precursor_type" "library_entry_name" "inchikey" "library_source_name" "library_compound_name" "query_entry_name"
+1663 14 113.035283604395 113.035156497997 113.03541992282 80.50932 77.16429 83.64567 4 4 88462324.9597518 92812020.095242 77298864.2688328 77198465.9156761 "M113T81" 56653 1 0.942265461847349 0.996860823822942 0.753812369477879 1 4 0.25 NA 80.50932 NA "113.03508" 113.035283604395 NA 1 "PR100037" "[M+H]+" "Uracil" "ISAKRJDGNUQOIC-UHFFFAOYSA-N" "massbank" "Uracil" NA
+1664 14 113.035283604395 113.035156497997 113.03541992282 80.50932 77.16429 83.64567 4 4 88462324.9597518 92812020.095242 77298864.2688328 77198465.9156761 "M113T81" 56653 2 0.942265461847349 0.996860823822942 0.753812369477879 1 4 0.25 NA 80.50932 NA "113.03508" 113.035283604395 NA 1 "PR100037" "[M+H]+" "Uracil" "ISAKRJDGNUQOIC-UHFFFAOYSA-N" "massbank" "Uracil" NA
b
diff -r 000000000000 -r ab65999a5430 test-data/spectralMatching_xcms_matched_results.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/spectralMatching_xcms_matched_results.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,3 @@
+"qpid" "lpid" "mid" "dpc" "rdpc" "cdpc" "mcount" "allcount" "mpercent" "library_rt" "query_rt" "rtdiff" "library_precursor_mz" "query_precursor_mz" "library_precursor_ion_purity" "query_precursor_ion_purity" "library_accession" "library_precursor_type" "library_entry_name" "inchikey" "library_source_name" "library_compound_name" "query_entry_name"
+1663 56653 1 0.942265461847349 0.996860823822942 0.753812369477879 1 4 0.25 NA 80.50932 NA "113.03508" 113.035283604395 NA 1 "PR100037" "[M+H]+" "Uracil" "ISAKRJDGNUQOIC-UHFFFAOYSA-N" "massbank" "Uracil" NA
+1664 56653 2 0.942265461847349 0.996860823822942 0.753812369477879 1 4 0.25 NA 80.50932 NA "113.03508" 113.035283604395 NA 1 "PR100037" "[M+H]+" "Uracil" "ISAKRJDGNUQOIC-UHFFFAOYSA-N" "massbank" "Uracil" NA
b
diff -r 000000000000 -r ab65999a5430 test-data/spectralMatching_xcms_matched_results_instrumentTypes.tsv
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/spectralMatching_xcms_matched_results_instrumentTypes.tsv Wed Nov 27 14:23:10 2019 -0500
[
@@ -0,0 +1,3 @@
+"qpid" "lpid" "mid" "dpc" "rdpc" "cdpc" "mcount" "allcount" "mpercent" "library_rt" "query_rt" "rtdiff" "library_precursor_mz" "query_precursor_mz" "library_precursor_ion_purity" "query_precursor_ion_purity" "library_accession" "library_precursor_type" "library_entry_name" "inchikey" "library_source_name" "library_compound_name" "query_entry_name"
+1663 56653 1 0.942265461847349 0.996860823822942 0.753812369477879 1 4 0.25 NA 80.50932 NA "113.03508" 113.035283604395 NA 1 "PR100037" "[M+H]+" "Uracil" "ISAKRJDGNUQOIC-UHFFFAOYSA-N" "massbank" "Uracil" NA
+1664 56653 2 0.942265461847349 0.996860823822942 0.753812369477879 1 4 0.25 NA 80.50932 NA "113.03508" 113.035283604395 NA 1 "PR100037" "[M+H]+" "Uracil" "ISAKRJDGNUQOIC-UHFFFAOYSA-N" "massbank" "Uracil" NA
b
diff -r 000000000000 -r ab65999a5430 test-data/xset_group_LCMS_1_LCMS_2_LCMSMS_1_LCMSMS_2.RData
b
Binary file test-data/xset_group_LCMS_1_LCMS_2_LCMSMS_1_LCMSMS_2.RData has changed