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

Changeset 0:56cce1a90b73 (2019-11-27)
Next changeset 1:3d6356bcf998 (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
macros.xml
purityA.R
purityA.xml
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 56cce1a90b73 averageFragSpectra.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/averageFragSpectra.R Wed Nov 27 14:26:04 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 56cce1a90b73 combineAnnotations.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/combineAnnotations.R Wed Nov 27 14:26:04 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 56cce1a90b73 createDatabase.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/createDatabase.R Wed Nov 27 14:26:04 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 56cce1a90b73 createMSP.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/createMSP.R Wed Nov 27 14:26:04 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 56cce1a90b73 dbconfig.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dbconfig.R Wed Nov 27 14:26:04 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 56cce1a90b73 dimsPredictPuritySingle.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dimsPredictPuritySingle.R Wed Nov 27 14:26:04 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 56cce1a90b73 filterFragSpectra.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/filterFragSpectra.R Wed Nov 27 14:26:04 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 56cce1a90b73 flagRemove.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/flagRemove.R Wed Nov 27 14:26:04 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 56cce1a90b73 frag4feature.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/frag4feature.R Wed Nov 27 14:26:04 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 56cce1a90b73 macros.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml Wed Nov 27 14:26:04 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 56cce1a90b73 purityA.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/purityA.R Wed Nov 27 14:26:04 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 56cce1a90b73 purityA.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/purityA.xml Wed Nov 27 14:26:04 2019 -0500
[
b'@@ -0,0 +1,197 @@\n+<tool id="mspurity_puritya" name="msPurity.purityA" version="@TOOL_VERSION@+galaxy@GALAXY_TOOL_VERSION@">\n+    <description>\n+        Assess acquired precursor ion purity of MS/MS spectra\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__/purityA.R\'\n+            --out_dir=\'.\'\n+            \n+            --mzML_files=\'\n+                #for $i in $source\n+                    $i,\n+                #end for\n+                \'\n+            --galaxy_names=\'\n+                #for $i in $source\n+                    $i.name,\n+                #end for\n+                \'\n+            \n+            #if $offsets.offsets == \'user\'\n+                --minOffset=$minoffset\n+                --maxOffset=$maxoffset\n+            #end if\n+\n+            --iwNorm=$iw_norm\n+            --ilim=$ilim\n+\n+            --cores=\\${GALAXY_SLOTS:-4}\n+\n+            #if $nearest\n+                --nearest\n+            #end if\n+\n+            #if $mostIntense\n+                --mostIntense\n+            #end if\n+\n+            #if $isotopes.isotopes == "exclude_default"\n+                --exclude_isotopes\n+            #elif $isotopes.isotopes == "user"\n+                --exclude_isotopes\n+                --isotope_matrix=\'$isotopes.im\'\n+            #end if\n+\n+            --ppmInterp $ppmInterp\n+\n+    ]]></command>\n+    <inputs>\n+        <param name="source" type="data" multiple="true" format="mzml" label="*.mzML file" >\n+                    <validator type="empty_field" />\n+        </param>\n+        <param argument="--mostIntense" type="boolean" checked="true"\n+               label="Use most intense peak within isolation window for precursor?"\n+               help="If yes, this will ignore the recorded precursor within the mzML file and use\n+               use the most intense peak within the isolation window to calculate the precursor ion purity"/>\n+\n+        <param argument="--nearest" type="boolean" checked="true" \n+               label="Use nearest full scan to determine precursor?"\n+               help="If TRUE, this will use the neareset full scan to the fragmentation scan to determine what the m/z value\n+                     is of the precursor"/>\n+\n+        <param argument="--ppmInterp" type="float" label="Interpolation PPM" min="0" value="7"\n+               help="Set the ppm tolerance for the precursor ion purity interpolation.\n+               i.e. the ppm tolerence between the precursor ion found in the neighbouring scans. The closest match\n+               within the window will be used for the interpolation"/>\n+\n+        <conditional name="offsets">\n+            <param name="offsets" type="select" label="offsets" >\n+                <option value="auto" selected="true">Uses offsets determined in the mzML file</option>\n+                <option value="user">User supplied offset values</option>\n+            </param>\n+            <when value="user">\n+                <expand macro="offsets" />\n+            </when>\n+\t        <when value="auto"/>\n+\n+        </conditional>\n+\n+        <expand macro="general_params" />\n+\n+    </inputs>\n+    <outputs>\n+        <data name="purityA_output_tsv" format="tsv" label="${tool.name} on ${on_string}: tsv"\n+              from_work_dir="purityA_output.tsv" />\n+        <data name="purityA_output_rdata" format="rdata" label="${tool.name} on ${on_string}: RData"\n+              from_work_dir="purityA_output.RData" />\n+    </outputs>\n+    <tests>\n+       <test>\n+            <param name="source" value="LCMSMS_2.mzML,LCMSMS_1.mzML,LCMS_2.mzML,LCMS_1.mzML" ftype="mzml" />\n+            <output name="purityA_output_tsv" value="purityA_output.tsv" />\n+            <output name="purityA_output_rdata" value="purityA_output.RData" ftype="rdata" compare="sim_size"/>\n+        </test>\n+    </tests>\n+\n+    <help><![CDATA[\n+================================================='..b' the created database).\n+\n+There is also the additional output of the a tsv file of the pa@puritydf data frame.\n+\n+**Example LC-MS/MS processing workflow**\n+\n+The purityA object can be used for further processing including linking the fragmentation spectra to XCMS features,\n+averaging fragmentation, database creation and spectral matching (from the created database). See below for an example workflow:\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+**Isolation efficiency**\n+\n+When the isolation efficiency of an MS instrument is known the peak intensities within an isolation window can be normalised for the precursor purity calculation. The isolation efficiency can be estimated by measuring a single precursor across a sliding window. See figure 3 from the original msPurity paper (Lawson et al 2017). This has been experimentally measured  for a Thermo Fisher Q-Exactive Mass spectrometer using 0.5 Da windows and can be set within msPurity by using msPurity::iwNormQE.5() as the input to the iwNormFunc argument.\n+\n+Other options to model the isolation efficiency the  gaussian isolation window msPurity::iwNormGauss(minOff=-0.5, maxOff = 0.5) or a R-Cosine window msPurity::iwNormRCosine(minOff=-0.5, maxOff=0.5). Where the minOff and maxOff can be altered depending on the isolation window size.\n+\n+A user can also define their own normalisation function. The only requirement of the function is that given a value between the minOff and maxOff a normalisation value between 0-1 is returned.\n+\n+**Notes regarding instrument specific isolation window offsets used:**\n+\n+* The isolation widths offsets will be automatically determined from extracting metadata from the mzML file. However, for some vendors though this is not recorded, in these cases the offsets should be given by the user as an argument (offsets).\n+* In the case of Agilent only the "narrow" isolation is supported. This roughly equates to +/- 0.65 Da (depending on the instrument). If the file is detected as originating from an Agilent instrument the isolation widths will automatically be set as +/- 0.65 Da.\n+\n+\n+See Bioconductor documentation for more details about the function used, msPurity::purityA().\n+\n+-----------\n+Outputs\n+-----------\n+\n+* purity_msms: A tsv file of all the precursor ion purity score (and other metrics) of each fragmentation spectra\n+* purity_msms_rdata: The purityA object saved as an rdata file\n+\n+The purity_msms tsv file consists of the following columns:\n+\n+* pid: unique id for MS/MS scan\n+* fileid: unique id for mzML file\n+* seqNum: scan number\n+* precursorIntensity: precursor intensity value as defined in the mzML file\n+* precursorMZ: precursor m/z value as defined in the mzML file\n+* precursorRT: precursor RT value as defined in the mzML file\n+* precursorScanNum: precursor scan number value as defined in mzML file\n+* id: unique id (redundant)\n+* filename: mzML filename\n+* precursorNearest: MS1 scan nearest to the MS/MS scan\n+* aMz: The m/z value in the "precursorNearest" MS1 scan which most closely matches the precursorMZ value provided from the mzML file\n+* aPurity: The purity score for aMz\n+* apkNm: The number of peaks in the isolation window for aMz\n+* iMz: The m/z value in the precursorNearest MS1 scan that is the most intense within the isolation window.\n+* iPurity: The purity score for iMz\n+* ipkNm: The number of peaks in the isolation window for iMz\n+* inPurity: The interpolated purity score (the purity score is calculated at neighbouring MS1 scans and interpolated at the point of the MS/MS acquisition)\n+* inpkNm: The interpolated number of peaks in the isolation window\n+\n+\n+    ]]></help>\n+<expand macro="citations" />\n+</tool>\n'
b
diff -r 000000000000 -r 56cce1a90b73 purityX.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/purityX.R Wed Nov 27 14:26:04 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 56cce1a90b73 spectralMatching.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/spectralMatching.R Wed Nov 27 14:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/PR100037.sqlite
b
Binary file test-data/PR100037.sqlite has changed
b
diff -r 000000000000 -r 56cce1a90b73 test-data/PR100037.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/PR100037.txt Wed Nov 27 14:26:04 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 56cce1a90b73 test-data/averageFragSpectra_output_all.RData
b
Binary file test-data/averageFragSpectra_output_all.RData has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/averageFragSpectra_output_all_only.RData
b
Binary file test-data/averageFragSpectra_output_all_only.RData has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/averageFragSpectra_output_inter.RData
b
Binary file test-data/averageFragSpectra_output_inter.RData has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/averageFragSpectra_output_intra.RData
b
Binary file test-data/averageFragSpectra_output_intra.RData has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/combineAnnotations_combined_annotations.sqlite
b
Binary file test-data/combineAnnotations_combined_annotations.sqlite has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/combinedAnnotation_input_spectralMatching.sqlite
b
Binary file test-data/combinedAnnotation_input_spectralMatching.sqlite has changed
b
diff -r 000000000000 -r 56cce1a90b73 test-data/createDatabase_output.sqlite
b
Binary file test-data/createDatabase_output.sqlite has changed
b
diff -r 000000000000 -r 56cce1a90b73 test-data/createDatabase_output_eic.sqlite
b
Binary file test-data/createDatabase_output_eic.sqlite has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/filterFragSpectra_output.RData
b
Binary file test-data/filterFragSpectra_output.RData has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/flagRemove_input.RData
b
Binary file test-data/flagRemove_input.RData has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/frag4feature_output.RData
b
Binary file test-data/frag4feature_output.RData has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 test-data/metab_compound_subset.sqlite
b
Binary file test-data/metab_compound_subset.sqlite has changed
b
diff -r 000000000000 -r 56cce1a90b73 test-data/purityA_output.RData
b
Binary file test-data/purityA_output.RData has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 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 56cce1a90b73 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 56cce1a90b73 test-data/spectralMatching_input_massbank_test.sqlite
b
Binary file test-data/spectralMatching_input_massbank_test.sqlite has changed
b
diff -r 000000000000 -r 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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:26:04 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 56cce1a90b73 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