Repository 'mass_spectrometry_imaging_segmentations'
hg clone https://toolshed.g2.bx.psu.edu/repos/galaxyp/mass_spectrometry_imaging_segmentations

Changeset 6:80b6b96a175c (2018-06-19)
Previous changeset 5:cee9cf693709 (2018-06-11) Next changeset 7:adfef12c7e31 (2018-07-06)
Commit message:
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/msi_segmentation commit 37da74ed68228b16efbdbde776e7c38cc06eb5d5
modified:
segmentation_tool.xml
test-data/centroids_rdata.pdf
test-data/classes_ssc.tabular
test-data/cluster_skm.RData
test-data/kmeans_analyze.pdf
test-data/loadings_pca.tabular
test-data/pca_imzml.pdf
test-data/scores_pca.tabular
test-data/toplabels_skm.tabular
test-data/toplabels_ssc.tabular
b
diff -r cee9cf693709 -r 80b6b96a175c segmentation_tool.xml
--- a/segmentation_tool.xml Mon Jun 11 17:34:31 2018 -0400
+++ b/segmentation_tool.xml Tue Jun 19 18:08:36 2018 -0400
[
b'@@ -1,4 +1,4 @@\n-<tool id="mass_spectrometry_imaging_segmentations" name="MSI segmentation" version="1.10.0.1">\n+<tool id="mass_spectrometry_imaging_segmentations" name="MSI segmentation" version="1.10.0.2">\n     <description>mass spectrometry imaging spatial clustering</description>\n     <requirements>\n         <requirement type="package" version="1.10.0">bioconductor-cardinal</requirement>\n@@ -37,13 +37,15 @@\n ## Read MALDI Imaging dataset\n \n #if $infile.ext == \'imzml\'\n-    msidata = readImzML(\'infile\')\n+    msidata <- readImzML(\'infile\', mass.accuracy=$accuracy, units.accuracy = "$units")\n #elif $infile.ext == \'analyze75\'\n     msidata = readAnalyze(\'infile\')\n #else\n     load(\'infile.RData\')\n #end if\n \n+## create full matrix to make processed imzML files compatible with segmentation\n+iData(msidata) <- iData(msidata)[] \n ###################################### file properties in numbers ##############\n \n ## Number of features (m/z)\n@@ -105,7 +107,7 @@\n }\n \n properties = c("Number of m/z features",\n-               "Range of m/z values [Da]",\n+               "Range of m/z values",\n                "Number of pixels", \n                "Range of x coordinates", \n                "Range of y coordinates",\n@@ -157,7 +159,6 @@\n if (npeaks > 0)\n {\n \n-\n ######################## II) segmentation tools #############################\n #############################################################################\n         #set $color_string = \',\'.join([\'"%s"\' % $color.feature_color for $color in $colours])\n@@ -186,21 +187,28 @@\n             component_vector = character()\n             for (numberofcomponents in 1:$segm_cond.pca_ncomp)\n             {component_vector[numberofcomponents]= paste0("PC", numberofcomponents)}\n-            pca = PCA(msidata, ncomp=$segm_cond.pca_ncomp, column = component_vector, superpose = FALSE, \n+            pca_result = PCA(msidata, ncomp=$segm_cond.pca_ncomp, column = component_vector, superpose = FALSE, \n             method = "$segm_cond.pca_method", scale = $segm_cond.pca_scale, layout = c(ncomp, 1))\n \n-            print(image(pca, main="PCA image", lattice=lattice_input, strip = strip_input, col=colourvector))\n-            print(plot(pca, main="PCA plot", lattice=lattice_input, col= colourvector, strip = strip_input))\n+            ### images in pdf file\n+            print(image(pca_result, main="PCA image", lattice=lattice_input, strip = strip_input, col=colourvector))\n+            for (PCs in 1:$segm_cond.pca_ncomp){\n+                print(image(pca_result, column = c(paste0("PC",PCs)), superpose = FALSE, col.regions = risk.colors(100)))}\n+            ### plots in pdf file\n+            print(plot(pca_result, main="PCA plot", lattice=lattice_input, col= colourvector, strip = strip_input))\n+            for (PCs in 1:$segm_cond.pca_ncomp){\n+            print(plot(pca_result, column = c(paste0("PC",PCs)), superpose = FALSE))}\n \n-            pcaloadings = (pca@resultData\\$ncomp\\$loadings) ### loading for each m/z value\n-            pcascores = (pca@resultData\\$ncomp\\$scores) ### scores for each pixel\n+            \n+            ### values in tabular files\n+            pcaloadings = (pca_result@resultData\\$ncomp\\$loadings) ### loading for each m/z value\n+            pcascores = (pca_result@resultData\\$ncomp\\$scores) ### scores for each pixel\n \n             write.table(pcaloadings, file="$mzfeatures", quote = FALSE, row.names = TRUE, col.names=NA, sep = "\\t")\n             write.table(pcascores, file="$pixeloutput", quote = FALSE, row.names = TRUE, col.names=NA, sep = "\\t")\n \n             ## optional output as .RData\n             #if $output_rdata:\n-\n             ## save as (.RData)\n             save(pca, file="$segmentation_rdata")\n \n@@ -241,12 +249,14 @@\n             ssc = spatialShrunkenCentroids(msidata, r=c($segm_cond.centroids_r), k=c($segm_cond.centroids_k), s=c($segm_cond.centroids_s), method="$segm_cond.centroids_method")\n             print(image(ssc, key=TRUE, main="Spatial shrunken centroids", lattice=latti'..b'ol= colourvector, strip = strip_input,layout=c($segm_cond.centroids_layout)))\n+            print(plot(ssc, mode = "tstatistics",key = TRUE, lattice=lattice_input, layout = c($segm_cond.centroids_layout), main="t-statistics", col=colourvector))\n+            print(plot(summary(ssc), main = "Number of segments",lattice=lattice_input))\n \n             ssc_classes = data.frame(matrix(NA, nrow = pixelcount, ncol = 0))\n             for (iteration in 1:length(ssc@resultData)){\n             ssc_class = ((ssc@resultData)[[iteration]]\\$classes)\n             ssc_classes = cbind(ssc_classes, ssc_class) }\n-            colnames(ssc_classes) = names((ssc@resultData)) \n+            colnames(ssc_classes) = names((ssc@resultData))\n \n             ssc_toplabels =  topLabels(ssc, n=$segm_cond.centroids_toplabels)\n \n@@ -273,9 +283,14 @@\n     ]]></configfile>\n     </configfiles>\n     <inputs>\n-        <param name="infile" type="data" format="imzml, rdata, analyze75"\n+        <param name="infile" type="data" format="imzml,rdata,analyze75"\n                label="Inputfile as imzML, Analyze7.5 or Cardinal MSImageSet saved as RData"\n                 help="Upload composite datatype imzml (ibd+imzML) or analyze75 (hdr+img+t2m) or regular upload .RData (Cardinal MSImageSet)"/>\n+        <param name="accuracy" type="float" value="50" label="Only for processed imzML files: enter mass accuracy to which the m/z values will be binned" help="This should be set to the native accuracy of the mass spectrometer, if known"/>\n+        <param name="units" display="radio" type="select" label="Only for processed imzML files: unit of the mass accuracy" help="either m/z or ppm">\n+            <option value="mz" >mz</option>\n+            <option value="ppm" selected="True" >ppm</option>\n+        </param>\n             <conditional name="segm_cond">\n                 <param name="segmentationtool" type="select" label="Select the tool for spatial clustering">\n                     <option value="pca" selected="True">pca</option>\n@@ -322,8 +337,8 @@\n                            label="The sparsity thresholding parameter by which to shrink the t-statistics (s)"\n                            help="As s increases, fewer m/z features (m/z values) will be used in the spatial segmentation, and only the informative m/z features will be retained. Multiple values are allowed (e.g. 1,2,3 or 2:5)"/>\n                     <param name="centroids_method" type="select" display="radio" label = "The method to use to calculate the spatial smoothing kernels for the embedding. The \'gaussian\' method refers to spatially-aware (SA) weights, and \'adaptive\' refers to spatially-aware structurally-adaptive (SASA) weights">\n-                        <option value="gaussian" selected="True">gaussian</option>\n-                        <option value="adaptive">adaptive</option>\n+                        <option value="gaussian">gaussian</option>\n+                        <option value="adaptive" selected="True">adaptive</option>\n                 </param>\n                 <param name="centroids_toplabels" type="integer" value="500"\n                        label="Number of toplabels (m/z) which should be written in tabular output"/>\n@@ -406,7 +421,7 @@\n             <param name="infile" value="preprocessed.RData" ftype="rdata"/>\n             <param name="segmentationtool" value="centroids"/>\n             <param name="centroids_r" value="1,2"/>\n-            <param name="centroids_k" value="5"/>\n+            <param name="centroids_k" value="3"/>\n             <param name="centroids_toplabels" value="50"/>\n             <repeat name="colours">\n                 <param name="feature_color" value="#0000FF"/>\n@@ -444,7 +459,7 @@\n Options: \n \n - PCA: principal component analysis\n-- k-means: patially-aware k-means clustering\n+- k-means: spatially-aware k-means clustering\n - spatial shrunken centroids: Allows the number of segments to decrease according to the data. This allows automatic selection of the number of clusters\n \n Output: \n'
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/centroids_rdata.pdf
b
Binary file test-data/centroids_rdata.pdf has changed
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/classes_ssc.tabular
--- a/test-data/classes_ssc.tabular Mon Jun 11 17:34:31 2018 -0400
+++ b/test-data/classes_ssc.tabular Tue Jun 19 18:08:36 2018 -0400
b
@@ -1,10 +1,10 @@
- r = 1, k = 5, s = 2 r = 2, k = 5, s = 2
+ r = 1, k = 3, s = 2 r = 2, k = 3, s = 2
 x = 1, y = 1 1 1
-x = 2, y = 1 1 1
-x = 3, y = 1 1 1
-x = 1, y = 2 1 1
-x = 2, y = 2 1 1
-x = 3, y = 2 1 1
-x = 1, y = 3 1 1
-x = 2, y = 3 1 1
-x = 3, y = 3 1 1
+x = 2, y = 1 2 2
+x = 3, y = 1 2 2
+x = 1, y = 2 2 2
+x = 2, y = 2 2 2
+x = 3, y = 2 2 3
+x = 1, y = 3 2 2
+x = 2, y = 3 2 3
+x = 3, y = 3 2 2
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/cluster_skm.RData
b
Binary file test-data/cluster_skm.RData has changed
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/kmeans_analyze.pdf
b
Binary file test-data/kmeans_analyze.pdf has changed
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/loadings_pca.tabular
--- a/test-data/loadings_pca.tabular Mon Jun 11 17:34:31 2018 -0400
+++ b/test-data/loadings_pca.tabular Tue Jun 19 18:08:36 2018 -0400
b
b'@@ -1,1200 +1,1200 @@\n \tPC1\tPC2\n-m/z = 300.08\t0.00431122859758328\t-0.00526403166713931\n-m/z = 300.17\t0.000423445750267206\t-0.000517029377651574\n-m/z = 300.25\t-4.65194136388568e-11\t4.22150043338432e-11\n-m/z = 300.33\t-1.35108640897926e-11\t1.22607138698331e-11\n-m/z = 300.42\t-1.05327790921025e-12\t9.55819549637334e-13\n-m/z = 300.5\t8.10333136002965e-07\t-9.89420809481534e-07\n-m/z = 300.58\t5.81387112966494e-07\t-7.09876570974718e-07\n-m/z = 300.67\t1.07032789778496e-07\t-1.3068757132071e-07\n-m/z = 300.75\t-3.41774539687269e-15\t3.10254343744236e-15\n-m/z = 300.83\t-1.90964962307276e-15\t1.73153417690035e-15\n-m/z = 300.92\t-3.12206575690943e-16\t2.86172920940908e-16\n-m/z = 301\t-2.35584915864224e-19\t-2.39137956448111e-18\n-m/z = 301.08\t6.24592377484264e-11\t-7.62630441831167e-11\n-m/z = 301.17\t1.86468442023791e-11\t-2.27678905244781e-11\n-m/z = 301.25\t1.54395028798146e-12\t-1.88516928469357e-12\n-m/z = 301.33\t-3.12195676474849e-19\t-5.5425195585085e-19\n-m/z = 301.42\t4.96775595330938e-20\t1.579098956302e-18\n-m/z = 301.5\t2.57350596870514e-19\t2.18127403453142e-18\n-m/z = 301.58\t4.42709790016299e-15\t-5.41010678974902e-15\n-m/z = 301.67\t2.60687373306297e-15\t-3.17751109594509e-15\n-m/z = 301.75\t4.39410952738884e-16\t-5.28632415348462e-16\n-m/z = 301.83\t1.05944401051694e-19\t9.3662032990655e-19\n-m/z = 301.92\t3.34224814506237e-20\t2.0197067391433e-19\n-m/z = 302\t8.02035976292641e-19\t5.37017895942491e-18\n-m/z = 302.08\t1.21085451025988e-19\t1.81827409451864e-18\n-m/z = 302.17\t7.38466499983087e-19\t3.44413522520949e-18\n-m/z = 302.25\t4.57155298350873e-19\t2.66230065383662e-18\n-m/z = 302.33\t-6.94118142019246e-20\t-7.54527478196117e-19\n-m/z = 302.42\t5.07595020807904e-20\t5.1810033737195e-19\n-m/z = 302.5\t-1.3715745400562e-19\t-1.06862346641899e-18\n-m/z = 302.58\t5.95309479145226e-19\t5.38040125743484e-18\n-m/z = 302.67\t-0.00238735543431953\t-0.000597177601535258\n-m/z = 302.75\t-0.0422753281275894\t-0.0105748304975567\n-m/z = 302.83\t-0.0478251463644703\t-0.011963072523027\n-m/z = 302.92\t-0.0117873138328592\t-0.00294850096557014\n-m/z = 303\t-0.000543891887813244\t-0.000136050145022233\n-m/z = 303.08\t3.32085951624374e-19\t2.64961335760128e-18\n-m/z = 303.17\t4.45995468664797e-19\t4.61583904443269e-18\n-m/z = 303.25\t3.96416453484522e-20\t3.4511340003723e-19\n-m/z = 303.33\t-4.18546560129791e-06\t-1.04696027794821e-06\n-m/z = 303.42\t-1.78559226074231e-06\t-4.46651423693359e-07\n-m/z = 303.5\t-2.40845866549198e-07\t-6.02456403690884e-08\n-m/z = 303.58\t1.90498661095197e-19\t1.81511426457869e-18\n-m/z = 303.67\t-9.73059923560892e-20\t-7.84518358870299e-19\n-m/z = 303.75\t3.44665966411673e-20\t3.21126816634418e-19\n-m/z = 303.83\t-0.00179950042171068\t0.0573072605259959\n-m/z = 303.92\t-0.00323910627580947\t0.117042680086361\n-m/z = 304\t0.00221983247055458\t0.135440075021637\n-m/z = 304.08\t-0.00167857919888083\t0.0398049258709001\n-m/z = 304.17\t-0.0152542901926571\t-0.0127905956151809\n-m/z = 304.25\t-0.00615007956388473\t-0.00664260824343147\n-m/z = 304.33\t-0.000463810193289096\t-0.000732422023079693\n-m/z = 304.42\t0.0121864568041162\t0.000404596261869844\n-m/z = 304.5\t0.0206720168643015\t0.000503758798744135\n-m/z = 304.58\t0.0328176999234842\t0.0126423547079229\n-m/z = 304.67\t0.0482606832428354\t0.0105800636691626\n-m/z = 304.75\t0.0142742734952315\t0.00471930409453502\n-m/z = 304.83\t0.00118635057916411\t0.00066247424556938\n-m/z = 304.92\t0.00138871717853178\t4.61060822079788e-05\n-m/z = 305\t0.0527117640926545\t0.0017500560705623\n-m/z = 305.08\t0.0428954493028061\t0.00142414962759598\n-m/z = 305.17\t0.00848209306364131\t0.000281745808963665\n-m/z = 305.25\t1.99382379701147e-06\t5.72938648410218e-07\n-m/z = 305.33\t3.36192825452401e-07\t1.33981156080589e-07\n-m/z = 305.42\t-2.57614970261101e-12\t-2.78246280429868e-12\n-m/z = 305.5\t-7.51722741383497e-20\t-9.21855362767631e-19\n-m/z = 305.58\t4.42256844037154e-06\t1.4683141191764e-07\n-m/z = 305.67\t0.00571542047365583\t-0.00879722931697933\n-m/z = 305.75\t0.0254911789946343\t-0.0392460448983897\n-m/z = 305.83\t0.0105718033678137\t0.00291019853705424\n-m/z = 305.92\t-0.00618064757489443\t0.131084648437099\n-m/z = 306\t0.000838690930112181\t0.074'..b'e-10\n+m/z = 394\t0.000989421728722444\t0.0315093316645264\n+m/z = 394.08\t0.00166917857982561\t0.0531570081597263\n+m/z = 394.17\t0.000515223006486959\t0.0164551396233416\n+m/z = 394.25\t4.55292483933681e-05\t0.00146398008581852\n+m/z = 394.33\t-3.80471565353875e-08\t-5.85774621902618e-08\n+m/z = 394.42\t-1.80273895177885e-14\t-2.05731215765813e-14\n+m/z = 394.5\t-7.79318253183988e-15\t-8.89407194638916e-15\n+m/z = 394.58\t1.12421356229089e-07\t3.58019391594164e-06\n+m/z = 394.67\t7.11020518847107e-08\t2.26769779930465e-06\n+m/z = 394.75\t0.000316047453349271\t0.0100649148736834\n+m/z = 394.83\t0.00229889763821622\t0.073211172468377\n+m/z = 394.92\t0.00150372971795869\t0.0478880892309078\n+m/z = 395\t0.00029270597284308\t0.00932157526617028\n+m/z = 395.08\t-0.00875103820451384\t-0.00998622320294566\n+m/z = 395.17\t-0.0126456283855077\t-0.0144305240873075\n+m/z = 395.25\t-0.00378465244012697\t-0.00431884573343673\n+m/z = 395.33\t-0.000315001652628071\t-0.0003594632704066\n+m/z = 395.42\t1.56478579109376e-07\t4.98324936692162e-06\n+m/z = 395.5\t4.95699913415574e-08\t1.57861625005096e-06\n+m/z = 395.58\t4.59965930779631e-09\t1.46481706780772e-07\n+m/z = 395.67\t-8.93363646461196e-07\t-1.01945947057816e-06\n+m/z = 395.75\t-5.28499859980321e-07\t-6.03096163117766e-07\n+m/z = 395.83\t0.0101721470821756\t-0.00254460417531897\n+m/z = 395.92\t0.0901124169298956\t-0.0225408899978154\n+m/z = 396\t0.0619057408174026\t-0.0154852188209356\n+m/z = 396.08\t0.0120686207083509\t-0.00301886756043133\n+m/z = 396.17\t3.90374625477797e-18\t-4.26482908739888e-18\n+m/z = 396.25\t-5.93693504224596e-11\t-6.77491660942402e-11\n+m/z = 396.33\t-1.62663168111839e-11\t-1.85622607554567e-11\n+m/z = 396.42\t-1.09391513751505e-12\t-1.24832090104632e-12\n+m/z = 396.5\t6.43609376126094e-06\t-1.60993663686283e-06\n+m/z = 396.58\t2.04220500508399e-06\t-5.10841013806365e-07\n+m/z = 396.67\t1.90042568569988e-07\t-4.75376068415208e-08\n+m/z = 396.75\t-4.67475446624755e-15\t-5.3326386469726e-15\n+m/z = 396.83\t-2.35292869192715e-15\t-2.6885839335751e-15\n+m/z = 396.92\t-3.61209813372809e-16\t-4.12528162736218e-16\n+m/z = 397\t0.00683320944088089\t-0.00170927192743567\n+m/z = 397.08\t0.0508156173515184\t-0.0127111145890863\n+m/z = 397.17\t0.0315399671799999\t-0.00788946701538046\n+m/z = 397.25\t0.0057109852596642\t-0.00142855664922873\n+m/z = 397.33\t1.69355803146189e-18\t-2.4070881379038e-18\n+m/z = 397.42\t-2.55636987541564e-18\t2.56899633510186e-18\n+m/z = 397.5\t6.73517323570299e-19\t-7.66310252431629e-19\n+m/z = 397.58\t7.9537540167809e-19\t-8.92561588554678e-19\n+m/z = 397.67\t3.41887735034668e-06\t-8.55204443659249e-07\n+m/z = 397.75\t1.00353056889335e-06\t-2.51025033634192e-07\n+m/z = 397.83\t8.01158365263549e-08\t-2.00403268059346e-08\n+m/z = 397.92\t7.96352311675038e-19\t-8.60013892607095e-19\n+m/z = 398\t2.25222808821135e-18\t-2.4209657470406e-18\n+m/z = 398.08\t-0.00206607196679602\t-0.00235769234822121\n+m/z = 398.17\t-0.0225874349565932\t-0.0257755896848458\n+m/z = 398.25\t-0.0160218359330536\t-0.0182832742502865\n+m/z = 398.33\t-0.00269408959956318\t-0.003074352976825\n+m/z = 398.42\t5.97028957579116e-18\t-6.33110805958287e-18\n+m/z = 398.5\t9.61342370577976e-19\t-1.13320435197315e-18\n+m/z = 398.58\t-3.24473506674746e-18\t3.66237276776119e-18\n+m/z = 398.67\t0.00295354336564466\t-0.0016465989339032\n+m/z = 398.75\t0.100753555082997\t-0.0424027103707123\n+m/z = 398.83\t0.0858729519853828\t-0.0359862357359942\n+m/z = 398.92\t0.0173733382364935\t-0.00713147150476627\n+m/z = 399\t2.83026187441402e-18\t-3.04327853728262e-18\n+m/z = 399.08\t-1.22506121772703e-18\t1.4915836610842e-18\n+m/z = 399.17\t1.84222166472335e-18\t-2.05522370329722e-18\n+m/z = 399.25\t-4.72454930480822e-18\t4.99998585680538e-18\n+m/z = 399.33\t8.72598113342637e-06\t-3.70432674671439e-06\n+m/z = 399.42\t2.88619885890936e-06\t-1.19693828706444e-06\n+m/z = 399.5\t2.87745593751293e-07\t-1.14900342938852e-07\n+m/z = 399.58\t3.2129198133829e-18\t-3.43975778540786e-18\n+m/z = 399.67\t8.66980330177834e-18\t-9.41852991743499e-18\n+m/z = 399.75\t-8.92725735438656e-19\t1.02484493249962e-18\n+m/z = 399.83\t5.28798126094853e-10\t-2.33513641937525e-10\n+m/z = 399.92\t3.87854523868878e-10\t-1.6226352715599e-10\n'
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/pca_imzml.pdf
b
Binary file test-data/pca_imzml.pdf has changed
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/scores_pca.tabular
--- a/test-data/scores_pca.tabular Mon Jun 11 17:34:31 2018 -0400
+++ b/test-data/scores_pca.tabular Tue Jun 19 18:08:36 2018 -0400
b
@@ -1,10 +1,10 @@
  PC1 PC2
-x = 1, y = 1 -1.00970093989579 -0.757987492163091
-x = 2, y = 1 -0.579669229309752 0.365615195586662
-x = 3, y = 1 1.04790449059336 -0.831141108678229
-x = 1, y = 2 -3.5004093695087 -0.608578545994502
-x = 2, y = 2 0.325050824762021 -0.275854508943189
-x = 3, y = 2 1.31374997886227 -0.0192699346592579
-x = 1, y = 3 1.46193831394871 0.0337353199555271
-x = 2, y = 3 1.08833133183904 -1.1646109051122
-x = 3, y = 3 -0.147195401291164 3.25809198000829
+x = 1, y = 1 1.00970093989579 -0.757987492163086
+x = 2, y = 1 0.57966922930975 0.365615195586664
+x = 3, y = 1 -1.04790449059336 -0.831141108678227
+x = 1, y = 2 3.5004093695087 -0.608578545994505
+x = 2, y = 2 -0.325050824762021 -0.275854508943196
+x = 3, y = 2 -1.31374997886227 -0.0192699346592637
+x = 1, y = 3 -1.46193831394871 0.0337353199555209
+x = 2, y = 3 -1.08833133183904 -1.1646109051122
+x = 3, y = 3 0.147195401291163 3.25809198000829
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/toplabels_skm.tabular
--- a/test-data/toplabels_skm.tabular Mon Jun 11 17:34:31 2018 -0400
+++ b/test-data/toplabels_skm.tabular Tue Jun 19 18:08:36 2018 -0400
b
@@ -1,21 +1,21 @@
  mz r k cluster centers withinss betweenss
 1 1199.55615234375 3 3 1 12.3333333333333 18.6666666666667 3661.33333333333
-2 1199.55615234375 3 3 2 81 154 3661.33333333333
-3 1199.55615234375 3 3 3 37 0 3661.33333333333
+2 1199.55615234375 3 3 2 81 0 3661.33333333333
+3 1199.55615234375 3 3 3 37 154 3661.33333333333
 4 1199.59753417969 3 3 1 14.3333333333333 144.666666666667 3658.13333333333
-5 1199.59753417969 3 3 2 84 137.2 3658.13333333333
-6 1199.59753417969 3 3 3 34.6 0 3658.13333333333
+5 1199.59753417969 3 3 2 84 0 3658.13333333333
+6 1199.59753417969 3 3 3 34.6 137.2 3658.13333333333
 7 1199.55615234375 1 3 1 12.3333333333333 1504.66666666667 2198
-8 1199.55615234375 1 3 2 49.3333333333333 18.6666666666667 2198
-9 1199.55615234375 1 3 3 39.3333333333333 112.666666666667 2198
+8 1199.55615234375 1 3 2 49.3333333333333 112.666666666667 2198
+9 1199.55615234375 1 3 3 39.3333333333333 18.6666666666667 2198
 10 1199.55615234375 2 3 1 12.3333333333333 1504.66666666667 2198
 11 1199.55615234375 2 3 2 49.3333333333333 18.6666666666667 2198
 12 1199.55615234375 2 3 3 39.3333333333333 112.666666666667 2198
 13 1199.63891601562 3 3 1 11 26 2049.02222222222
-14 1199.63891601562 3 3 2 62 45.2 2049.02222222222
-15 1199.63891601562 3 3 3 30.4 0 2049.02222222222
-16 1199.55615234375 2 2 1 12.3333333333333 18.6666666666667 2048
-17 1199.55615234375 2 2 2 44.3333333333333 1767.33333333333 2048
-18 1199.55615234375 3 2 1 12.3333333333333 18.6666666666667 2048
-19 1199.55615234375 3 2 2 44.3333333333333 1767.33333333333 2048
+14 1199.63891601562 3 3 2 62 0 2049.02222222222
+15 1199.63891601562 3 3 3 30.4 45.2 2049.02222222222
+16 1199.55615234375 2 2 1 12.3333333333333 1767.33333333333 2048
+17 1199.55615234375 2 2 2 44.3333333333333 18.6666666666667 2048
+18 1199.55615234375 3 2 1 12.3333333333333 1767.33333333333 2048
+19 1199.55615234375 3 2 2 44.3333333333333 18.6666666666667 2048
 20 1199.59753417969 1 3 1 14.3333333333333 1946 1784.66666666667
b
diff -r cee9cf693709 -r 80b6b96a175c test-data/toplabels_ssc.tabular
--- a/test-data/toplabels_ssc.tabular Mon Jun 11 17:34:31 2018 -0400
+++ b/test-data/toplabels_ssc.tabular Tue Jun 19 18:08:36 2018 -0400
b
@@ -1,51 +1,51 @@
  mz r k s classes centers tstatistics p.values adj.p.values
-1 200.083343505859 1 5 2 1 5.29581279081497 0 1 1
-2 200.16667175293 1 5 2 1 2.49731024427445 0 1 1
-3 200.25 1 5 2 1 4.24962276503692 0 1 1
-4 200.333343505859 1 5 2 1 4.16908612899782 0 1 1
-5 200.41667175293 1 5 2 1 0.989885497306688 0 1 1
-6 200.5 1 5 2 1 0.0378717820621928 0 1 1
-7 200.583343505859 1 5 2 1 2.81878248323476e-05 0 1 1
-8 200.66667175293 1 5 2 1 1.26528769673667e-06 0 1 1
-9 200.75 1 5 2 1 0.666464703081512 0 1 1
-10 200.833343505859 1 5 2 1 3.6413484204556 0 1 1
-11 200.91667175293 1 5 2 1 3.45873609261615 0 1 1
-12 201 1 5 2 1 1.58100572954213 0 1 1
-13 201.083343505859 1 5 2 1 0.2813029079667 0 1 1
-14 201.16667175293 1 5 2 1 4.42209759159998e-14 0 1 1
-15 201.25 1 5 2 1 3.41779163861997e-17 0 1 1
-16 201.333343505859 1 5 2 1 0.000253170100352953 0 1 1
-17 201.41667175293 1 5 2 1 0.00016447017446336 0 1 1
-18 201.5 1 5 2 1 0.000183867881986821 0 1 1
-19 201.583343505859 1 5 2 1 4.80801683375459e-05 0 1 1
-20 201.66667175293 1 5 2 1 4.30318969255044e-06 0 1 1
-21 201.75 1 5 2 1 0 0 1 1
-22 201.833343505859 1 5 2 1 2.0705095503691e-21 0 1 1
-23 201.91667175293 1 5 2 1 0.317972392328613 0 1 1
-24 202 1 5 2 1 2.57150058080505 0 1 1
-25 202.083343505859 1 5 2 1 1.49868298641895 0 1 1
-26 202.16667175293 1 5 2 1 0.25013120564791 0 1 1
-27 202.25 1 5 2 1 1.4449812523345e-22 0 1 1
-28 202.333343505859 1 5 2 1 1.74452077011247e-25 0 1 1
-29 202.41667175293 1 5 2 1 1.35170741821504e-12 0 1 1
-30 202.5 1 5 2 1 7.3505957351487e-13 0 1 1
-31 202.583343505859 1 5 2 1 0.000169235455849127 0 1 1
-32 202.66667175293 1 5 2 1 4.58946079733417e-05 0 1 1
-33 202.75 1 5 2 1 2.22806340998603 0 1 1
-34 202.833343505859 1 5 2 1 3.65405397849231 0 1 1
-35 202.91667175293 1 5 2 1 1.61867782532639 0 1 1
-36 203 1 5 2 1 0.951757648659752 0 1 1
-37 203.083343505859 1 5 2 1 0.257863080787932 0 1 1
-38 203.16667175293 1 5 2 1 0.0194538242626946 0 1 1
-39 203.25 1 5 2 1 4.7171224633149e-18 0 1 1
-40 203.333343505859 1 5 2 1 0.000307547558701268 0 1 1
-41 203.41667175293 1 5 2 1 0.000139660993421023 0 1 1
-42 203.5 1 5 2 1 0.27392848127601 0 1 1
-43 203.583343505859 1 5 2 1 1.26337064330411 0 1 1
-44 203.66667175293 1 5 2 1 0.528825340542583 0 1 1
-45 203.75 1 5 2 1 1.78218056827935 0 1 1
-46 203.833343505859 1 5 2 1 5.68944001839327 0 1 1
-47 203.91667175293 1 5 2 1 2.44621656168393 0 1 1
-48 204 1 5 2 1 1.67917065138453 0 1 1
-49 204.083343505859 1 5 2 1 4.39432230628649 0 1 1
-50 204.16667175293 1 5 2 1 4.57011382745916 0 1 1
+1 364.333343505859 1 3 2 1 15.8337765722821 0.449479909587349 NA NA
+2 364.333343505859 2 3 2 1 15.8337765722821 0.449479909587349 NA NA
+3 203.833343505859 1 3 2 1 14.0415253451331 0.449478654505296 NA NA
+4 203.833343505859 2 3 2 1 14.0415253451331 0.449478654505296 NA NA
+5 259.916656494141 1 3 2 1 13.8981327063543 0.449478540011514 NA NA
+6 259.916656494141 2 3 2 1 13.8981327063543 0.449478540011514 NA NA
+7 200.25 1 3 2 1 10.4880169699887 0.449474897701911 NA NA
+8 200.25 2 3 2 1 10.4880169699887 0.449474897701911 NA NA
+9 200.333343505859 1 3 2 1 10.2892503590812 0.449474610932727 NA NA
+10 200.333343505859 2 3 2 1 10.2892503590812 0.449474610932727 NA NA
+11 259.833343505859 1 3 2 1 9.55638913925806 0.449473448172064 NA NA
+12 259.833343505859 2 3 2 1 9.55638913925806 0.449473448172064 NA NA
+13 360.916687011719 1 3 2 1 9.04224883162212 0.449472524177856 NA NA
+14 360.916687011719 2 3 2 1 9.04224883162212 0.449472524177856 NA NA
+15 370.083343505859 1 3 2 1 8.45643021892373 0.44947133139287 NA NA
+16 370.083343505859 2 3 2 1 8.45643021892373 0.44947133139287 NA NA
+17 364.25 1 3 2 1 8.15357261143537 0.449470647536679 NA NA
+18 364.25 2 3 2 1 8.15357261143537 0.449470647536679 NA NA
+19 200.16667175293 1 3 2 1 6.16326174971333 0.449464481313509 NA NA
+20 200.16667175293 2 3 2 1 6.16326174971333 0.449464481313509 NA NA
+21 203.91667175293 1 3 2 1 6.03716112636297 0.449463953687195 NA NA
+22 203.91667175293 2 3 2 1 6.03716112636297 0.449463953687195 NA NA
+23 225 1 3 2 1 5.71436916011582 0.449462496977867 NA NA
+24 225 2 3 2 1 5.71436916011582 0.449462496977867 NA NA
+25 216.91667175293 1 3 2 1 5.64877209898622 0.449462180580643 NA NA
+26 216.91667175293 2 3 2 1 5.64877209898622 0.449462180580643 NA NA
+27 249.25 1 3 2 1 5.15263210866428 0.449459526788925 NA NA
+28 249.25 2 3 2 1 5.15263210866428 0.449459526788925 NA NA
+29 367.583343505859 1 3 2 1 4.44314020180342 0.449454702074192 NA NA
+30 367.583343505859 2 3 2 1 4.44314020180342 0.449454702074192 NA NA
+31 364.416687011719 1 3 2 1 4.30740701190317 0.449453597945591 NA NA
+32 364.416687011719 2 3 2 1 4.30740701190317 0.449453597945591 NA NA
+33 370 1 3 2 1 4.15967192336677 0.449452314295502 NA NA
+34 370 2 3 2 1 4.15967192336677 0.449452314295502 NA NA
+35 249.333343505859 1 3 2 1 4.06900916364662 0.449451480388054 NA NA
+36 249.333343505859 2 3 2 1 4.06900916364662 0.449451480388054 NA NA
+37 260 1 3 2 1 4.06636831188445 0.449451455520709 NA NA
+38 260 2 3 2 1 4.06636831188445 0.449451455520709 NA NA
+39 361 1 3 2 1 3.70261707034987 0.449447694373555 NA NA
+40 361 2 3 2 1 3.70261707034987 0.449447694373555 NA NA
+41 250.583343505859 1 3 2 1 3.44558838817237 0.449444557922452 NA NA
+42 250.583343505859 2 3 2 1 3.44558838817237 0.449444557922452 NA NA
+43 360.833343505859 1 3 2 1 3.35278414565422 0.449443307303055 NA NA
+44 360.833343505859 2 3 2 1 3.35278414565422 0.449443307303055 NA NA
+45 370.166687011719 1 3 2 1 2.82853938684749 0.449434701602457 NA NA
+46 370.166687011719 2 3 2 1 2.82853938684749 0.449434701602457 NA NA
+47 367.666687011719 1 3 2 1 2.5012261861986 0.449427499520948 NA NA
+48 367.666687011719 2 3 2 1 2.5012261861986 0.449427499520948 NA NA
+49 225.083343505859 1 3 2 1 2.45608703725853 0.449426355692286 NA NA
+50 225.083343505859 2 3 2 1 2.45608703725853 0.449426355692286 NA NA