changeset 1:fa183805db31 draft default tip

"planemo upload"
author gmat
date Mon, 04 May 2020 11:38:09 -0400
parents 96f7617b4848
children
files isocor.xml test-data/Metabolites.dat test-data/results.log test-data/results.tsv
diffstat 4 files changed, 249 insertions(+), 212 deletions(-) [+]
line wrap: on
line diff
--- a/isocor.xml	Mon May 27 03:33:36 2019 -0400
+++ b/isocor.xml	Mon May 04 11:38:09 2020 -0400
@@ -1,22 +1,22 @@
-<tool id="isocor" name="Isotope Correction for mass spectrometry labeling experiments" version="0.1.2">
+<tool id="isocor" name="Isotope Correction for mass spectrometry labeling experiments" version="0.1.3">
     <requirements>
-        <requirement type="package" version="2.1.3">isocor</requirement>
+        <requirement type="package" version="2.2.0">isocor</requirement>
     </requirements>
     <command detect_errors="exit_code"><![CDATA[
-        isocorcli -t "$tracer" -M "$input1" -D "$input2" -I "$input3"
-#if $tracer_purity:
-    -p $tracer_purity
+        isocorcli -t "$tracer" -M "$db.input1" -D "$db.input2" -I "$db.input3"
+#if $tcorrection.tracer_purity:
+    -p $tcorrection.tracer_purity
 #end if
-#if $resolution:
-    -r $resolution
+#if $HR.resolution:
+    -r $HR.resolution
 #end if
-#if $mz:
-    -m $mz
+#if $HR.mz:
+    -m $HR.mz
 #end if 
-#if $resolution_formula_code:
-    -f $resolution_formula_code
+#if $HR.resolution_formula_code:
+    -f $HR.resolution_formula_code
 #end if
-#if $correct_na_tracer:
+#if $tcorrection.correct_na_tracer:
     -n
 #end if
 #if $verbose_log:
@@ -26,45 +26,81 @@
     ]]></command>
     <inputs>
         <param type="text" name="tracer" argument="-t" label="the isotopic tracer (e.g. '13C')" />
-        <param type="data" name="input1" argument="-M" label="metabolites db" format="tabular" />
-        <param type="data" name="input2" argument="-D" label="derivatives db" format="tabular" />
-        <param type="data" name="input3" argument="-I" label="isotopes db" format="csv" />
-        <param type="integer" optional="true" argument="-r" name="resolution" label="HR only: resolution of the mass spectrometer (e.g. 1e4)" />
-        <param type="integer" optional="true" argument="-m" name="mz" label="HR only: mz at which resolution is given (e.g. '400')" />
-        <param type="boolean" optional="true" argument="-n" name="correct_na_tracer" label="flag to correct tracer natural abundance" />
-        <param type="boolean" optional="true" argument="-v" name="verbose_log" label="flag to enable verbose logs" />
-        <param type="text" optional="true" argument="-p" name="tracer_purity" label="purity vector of the tracer" />
+        <param type="data" name="input4" label="measurements Data file" format="tabular" help="This file contains the raw MS data for each metabolite of each sample." />
+        <section name="db" title="Database Files" expanded="true" help="The exact mass and natural abundance of each isotope and the elemental formulas used for correction have to be defined carefully, otherwise the correction will be wrong. IsoCor rely on several flat-files to store this information. Pre-configured files are shipped with IsoCor. For a good start download them on github">
+            <param type="data" name="input1" argument="-M" label="metabolites db" format="tabular" />
+            <param type="data" name="input2" argument="-D" label="derivatives db" format="tabular" />
+            <param type="data" name="input3" argument="-I" label="isotopes db" format="csv" />
+        </section>
+        <section name="HR" title="High Resolution Parameters" expanded="true" help="For measurements collected at high or ultrahigh resolution (e.g. on Orbitrap or FT-ICR instruments). Measurements collected at unitary resolution (e.g. on quadrupole instruments) are Low Resolution, don't fill this section.">
+            <param name="resolution_formula_code" optional="true" argument="-f" type="select" label="HR only: spectrometer formula code">
+                <option value="orbitrap">Orbitrap</option>
+                <option value="ft-icr">ft-icr</option>
+                <option value="constant">Constant</option>
+                <option value="datafile">Datafile</option>
+            </param>
+            <param type="integer" optional="true" argument="-r" name="resolution" label="HR only: resolution of the mass spectrometer (e.g. '60000' or '1e4')" />
+            <param type="integer" optional="true" argument="-m" name="mz" label="HR only: mz at which resolution is given (e.g. '400')" />
+        </section>
+        <section name="tcorrection" title="Tracer Correction Options" expanded="true">
+            <param type="boolean" optional="true" argument="-n" name="correct_na_tracer" label="flag to correct tracer natural abundance" help="Correct for the contribution of naturally occurring isotopes of the tracer element at unlabeled positions. This only concerns the tracer element: natural abundance of other elements is always corrected." />
+            <param type="text" optional="true" argument="-p" name="tracer_purity" label="purity vector of the tracer (e.g. '0,0,0.99,0.01')" help="Correct for the contribution of isotopic impurities of the tracer at labeled positions. The isotopic purity is typically obtained from the manufacturer. e.g. ¹³C-substates with purity of 99%, use 0.01 for ¹²C and 0.99 for ¹³C." />
+        </section>
+        <param type="boolean" optional="true" argument="-v" name="verbose_log" label="flag to enable verbose logs" help="Useful in case of trouble. Join it to the issue on github." />
 
-	<param name="resolution_formula_code" optional="true" argument="-f" type="select" label="HR only: spectrometer formula code">
-		<option value="orbitrap">Orbitrap</option>
-  		<option value="ft-icr">ft-icr</option>
-  		<option value="constant">Constant</option>
-  		<option value="datafile">Datafile</option>
-	</param>
 
-        <param type="data" name="input4" label="measurements Data file" format="tabular" />
     </inputs>
     <outputs>
-        <data name="output1" label="corrected measurements data file" format="csv" />
+        <data name="output1" label="corrected measurements data file" format="tabular" />
         <data name="output2" label="processing log file" format="txt" />
     </outputs>
     <tests>
         <test>
             <param name="tracer" value="13C"/>
-            <param name="input1" value="Metabolites.dat"/>
-            <param name="input2" value="Derivatives.dat"/>
-            <param name="input3" value="Isotopes.dat"/>
+            <section name="db">
+                <param name="input1" value="Metabolites.dat"/>
+                <param name="input2" value="Derivatives.dat"/>
+                <param name="input3" value="Isotopes.dat"/>
+            </section>
             <param name="input4" value="Data_example.tsv"/>
             <output name="output1">
-		<assert_contents>
-			<has_n_columns n="9" />
-		</assert_contents>
-	    </output>
+                <assert_contents>
+                    <has_n_columns n="10" />
+                </assert_contents>
+	        </output>
             <output name="output2">
-		<assert_contents>
-			<has_text text="- root - INFO -    errors: 0" />
-		</assert_contents>
-	    </output>
+		        <assert_contents>
+	        		<has_text text="- root - INFO -    errors: 0" />
+	        	</assert_contents>
+	        </output>
+        </test>
+        <test>
+            <param name="tracer" value="13C"/>
+            <section name="db">
+                <param name="input1" value="Metabolites.dat"/>
+                <param name="input2" value="Derivatives.dat"/>
+                <param name="input3" value="Isotopes.dat"/>
+            </section>
+            <section name="HR">
+                <param name="mz" value="400"/>
+                <param name="resolution" value="60000"/>
+                <param name="resolution_formula_code" value="orbitrap"/>
+            </section>
+            <section name="tcorrection">
+                <param name="correct_na_tracer" value="-n"/>
+                <param name="tracer_purity" value="0.01,0.99"/>
+            </section>
+            <param name="input4" value="Data_example.tsv"/>
+            <output name="output1">
+                <assert_contents>
+                    <has_n_columns n="10" />
+                </assert_contents>
+	        </output>
+            <output name="output2">
+		        <assert_contents>
+	        		<has_text text="- root - INFO -    errors: 0" />
+	        	</assert_contents>
+	        </output>
         </test>
     </tests>
     <help><![CDATA[
--- a/test-data/Metabolites.dat	Mon May 27 03:33:36 2019 -0400
+++ b/test-data/Metabolites.dat	Mon May 04 11:38:09 2020 -0400
@@ -1,27 +1,27 @@
-name	formula	charge
-Suc	C4H4O3	-1
-Fum	C4H3O4	-1
-Mal	C4H5O5	-1
-Cit	C6H7O7	-1
-aKG	C5H5O5	-1
-OA	C4H3O5	-1
-Asp	C4H6NO4	-1
-Aco	C6HO3	-1
-2/3PG	C3H6O3	-1
-G3P	C3H7O3	-1
-PEP	C3H4O3	-1
-E4P	C4H8O4	-1
-R1P	C5H8O4	-1
-R5P	C5H8O4	-1
-G1P	C6H10O5	-1
-G6P	C6H10O5	-1
-F1P	C6H10O5	-1
-F6P	C6H10O5	-1
-M6P	C6H10O5	-1
-6PG	C6H10O6	-1
-S7P	C7H11O6	-1
-FBP	C6H11O8P	-1
-AMP	C10H14N5O4	-1
-ADP	C10H14N5O4	-1
-ATP	C10H16N5O10	-1
-CDP	C9H15N3O7P	-1
+name	formula	charge	inchi
+Suc	C4H4O3	-1	InChI=1S/C4H6O4/c5-3(6)1-2-4(7)8/h1-2H2,(H,5,6)(H,7,8)/p-2
+Fum	C4H3O4	-1	InChI=1S/C4H4O4/c5-3(6)1-2-4(7)8/h1-2H,(H,5,6)(H,7,8)/p-2/b2-1+
+Mal	C4H5O5	-1	
+Cit	C6H7O7	-1	
+aKG	C5H5O5	-1	
+OA	C4H3O5	-1	
+Asp	C4H6NO4	-1	
+Aco	C6HO3	-1	
+2/3PG	C3H6O3	-1	
+G3P	C3H7O3	-1	
+PEP	C3H4O3	-1	
+E4P	C4H8O4	-1	
+R1P	C5H8O4	-1	
+R5P	C5H8O4	-1	
+G1P	C6H10O5	-1	
+G6P	C6H10O5	-1	
+F1P	C6H10O5	-1	
+F6P	C6H10O5	-1	
+M6P	C6H10O5	-1	
+6PG	C6H10O6	-1	
+S7P	C7H11O6	-1	
+FBP	C6H11O8P	-1	
+AMP	C10H14N5O4	-1	
+ADP	C10H14N5O4	-1	
+ATP	C10H16N5O10	-1	
+CDP	C9H15N3O7P	-1	
--- a/test-data/results.log	Mon May 27 03:33:36 2019 -0400
+++ b/test-data/results.log	Mon May 04 11:38:09 2020 -0400
@@ -1,58 +1,59 @@
-2019-02-20 15:46:03 - root - INFO - ------------------------------------------------
-2019-02-20 15:46:03 - root - INFO - Correction process
-2019-02-20 15:46:03 - root - INFO - ------------------------------------------------
-2019-02-20 15:46:03 - root - INFO -    data files
-2019-02-20 15:46:03 - root - INFO -       data file: Data_example.tsv
-2019-02-20 15:46:03 - root - INFO -       derivatives database: Derivatives.dat
-2019-02-20 15:46:03 - root - INFO -       metabolites database: Metabolites.dat
-2019-02-20 15:46:03 - root - INFO -       isotopes database: Isotopes.dat
-2019-02-20 15:46:03 - root - INFO -    correction parameters
-2019-02-20 15:46:03 - root - INFO -       isotopic tracer: 13C
-2019-02-20 15:46:03 - root - INFO -       correct natural abundance of the tracer element: False
-2019-02-20 15:46:03 - root - INFO -       isotopic purity of the tracer: None
-2019-02-20 15:46:03 - root - INFO -       mode: low-resolution
-2019-02-20 15:46:03 - root - INFO -    natural abundance of isotopes
-2019-02-20 15:46:03 - root - INFO -    {'C': {'mass': [Decimal('12.0'), Decimal('13.003354835')], 'abundance': [0.9893, 0.0107]}, 'H': {'mass': [Decimal('1.0078250322'), Decimal('2.0141017781')], 'abundance': [0.999885, 0.000115]}, 'N': {'mass': [Decimal('14.003074004'), Decimal('15.000108899')], 'abundance': [0.99636, 0.00364]}, 'O': {'mass': [Decimal('15.99491462'), Decimal('16.999131757'), Decimal('17.999159613')], 'abundance': [0.99757, 0.00038, 0.00205]}, 'P': {'mass': [Decimal('30.973761998')], 'abundance': [1.0]}, 'S': {'mass': [Decimal('31.972071174'), Decimal('32.971458910'), Decimal('33.9678670'), Decimal('35'), Decimal('35.967081')], 'abundance': [0.9499, 0.0075, 0.0425, 0.0, 0.0001]}, 'Si': {'mass': [Decimal('27.976926535'), Decimal('28.976494665'), Decimal('29.9737701')], 'abundance': [0.92223, 0.04685, 0.03092]}}
-2019-02-20 15:46:03 - root - INFO -    IsoCor version: 2.1.0
-2019-02-20 15:46:03 - root - INFO - ------------------------------------------------
-2019-02-20 15:46:03 - root - INFO - Constructing correctors for all (metabolite, derivative)...
-2019-02-20 15:46:03 - root - INFO - ------------------------------------------------
-2019-02-20 15:46:03 - root - INFO - ('Fum', '') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('OA', '') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('aKG', '') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('G3P', '') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('2/3PG', '') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('E4P', '') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('Fum', 'TMS') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('OA', 'TMS') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('aKG', 'TMS') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('G3P', 'TMS') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('2/3PG', 'TMS') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ('E4P', 'TMS') successfully constructed.
-2019-02-20 15:46:03 - root - INFO - ------------------------------------------------
-2019-02-20 15:46:03 - root - INFO - Correcting raw MS data...
-2019-02-20 15:46:03 - root - INFO - ------------------------------------------------
-2019-02-20 15:46:03 - root - INFO - Sample_1 - ('Fum', ''): processed
-2019-02-20 15:46:03 - root - INFO - Sample_2 - ('Fum', ''): processed
-2019-02-20 15:46:03 - root - INFO - Sample_1 - ('OA', ''): processed
-2019-02-20 15:46:03 - root - INFO - Sample_2 - ('OA', ''): processed
-2019-02-20 15:46:03 - root - INFO - Sample_1 - ('aKG', ''): processed
-2019-02-20 15:46:03 - root - INFO - Sample_2 - ('aKG', ''): processed
-2019-02-20 15:46:03 - root - INFO - Sample_1 - ('G3P', ''): processed
-2019-02-20 15:46:04 - root - INFO - Sample_2 - ('G3P', ''): processed
-2019-02-20 15:46:04 - root - INFO - Sample_1 - ('2/3PG', ''): processed
-2019-02-20 15:46:04 - root - INFO - Sample_2 - ('2/3PG', ''): processed
-2019-02-20 15:46:04 - root - INFO - Sample_1 - ('E4P', ''): processed
-2019-02-20 15:46:04 - root - INFO - Sample_2 - ('E4P', ''): processed
-2019-02-20 15:46:04 - root - INFO - Sample_3 - ('Fum', 'TMS'): processed
-2019-02-20 15:46:04 - root - INFO - Sample_3 - ('OA', 'TMS'): processed
-2019-02-20 15:46:04 - root - INFO - Sample_3 - ('aKG', 'TMS'): processed
-2019-02-20 15:46:04 - root - INFO - Sample_3 - ('G3P', 'TMS'): processed
-2019-02-20 15:46:04 - root - INFO - Sample_3 - ('2/3PG', 'TMS'): processed
-2019-02-20 15:46:04 - root - INFO - Sample_3 - ('E4P', 'TMS'): processed
-2019-02-20 15:46:04 - root - INFO - ------------------------------------------------
-2019-02-20 15:46:04 - root - INFO - Correction process summary
-2019-02-20 15:46:04 - root - INFO - ------------------------------------------------
-2019-02-20 15:46:04 - root - INFO -    number of samples: 3
-2019-02-20 15:46:04 - root - INFO -    number of (metabolite, derivative): 12
-2019-02-20 15:46:04 - root - INFO -    errors: 0
+2020-05-04 16:44:12 - numexpr.utils - INFO - NumExpr defaulting to 4 threads.
+2020-05-04 16:44:12 - root - INFO - ------------------------------------------------
+2020-05-04 16:44:12 - root - INFO - Correction process
+2020-05-04 16:44:12 - root - INFO - ------------------------------------------------
+2020-05-04 16:44:12 - root - INFO -    data files
+2020-05-04 16:44:12 - root - INFO -       data file: Data_example.tsv
+2020-05-04 16:44:12 - root - INFO -       derivatives database: Derivatives.dat
+2020-05-04 16:44:12 - root - INFO -       metabolites database: Metabolites.dat
+2020-05-04 16:44:12 - root - INFO -       isotopes database: Isotopes.dat
+2020-05-04 16:44:12 - root - INFO -    correction parameters
+2020-05-04 16:44:12 - root - INFO -       isotopic tracer: 13C
+2020-05-04 16:44:12 - root - INFO -       correct natural abundance of the tracer element: False
+2020-05-04 16:44:12 - root - INFO -       isotopic purity of the tracer: None
+2020-05-04 16:44:12 - root - INFO -       mode: low-resolution
+2020-05-04 16:44:12 - root - INFO -    natural abundance of isotopes
+2020-05-04 16:44:12 - root - INFO -    {'C': {'mass': [Decimal('12.0'), Decimal('13.003354835')], 'abundance': [0.9893, 0.0107]}, 'H': {'mass': [Decimal('1.0078250322'), Decimal('2.0141017781')], 'abundance': [0.999885, 0.000115]}, 'N': {'mass': [Decimal('14.003074004'), Decimal('15.000108899')], 'abundance': [0.99636, 0.00364]}, 'O': {'mass': [Decimal('15.99491462'), Decimal('16.999131757'), Decimal('17.999159613')], 'abundance': [0.99757, 0.00038, 0.00205]}, 'P': {'mass': [Decimal('30.973761998')], 'abundance': [1.0]}, 'S': {'mass': [Decimal('31.972071174'), Decimal('32.971458910'), Decimal('33.9678670'), Decimal('35'), Decimal('35.967081')], 'abundance': [0.9499, 0.0075, 0.0425, 0.0, 0.0001]}, 'Si': {'mass': [Decimal('27.976926535'), Decimal('28.976494665'), Decimal('29.9737701')], 'abundance': [0.92223, 0.04685, 0.03092]}}
+2020-05-04 16:44:12 - root - INFO -    IsoCor version: 2.2.0
+2020-05-04 16:44:12 - root - INFO - ------------------------------------------------
+2020-05-04 16:44:12 - root - INFO - Constructing correctors for all (metabolite, derivative)...
+2020-05-04 16:44:12 - root - INFO - ------------------------------------------------
+2020-05-04 16:44:12 - root - INFO - ('Fum', '') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('OA', '') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('aKG', '') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('G3P', '') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('2/3PG', '') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('E4P', '') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('Fum', 'TMS') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('OA', 'TMS') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('aKG', 'TMS') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('G3P', 'TMS') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('2/3PG', 'TMS') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ('E4P', 'TMS') successfully constructed.
+2020-05-04 16:44:12 - root - INFO - ------------------------------------------------
+2020-05-04 16:44:12 - root - INFO - Correcting raw MS data...
+2020-05-04 16:44:12 - root - INFO - ------------------------------------------------
+2020-05-04 16:44:12 - root - INFO - Sample_1 - ('Fum', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_2 - ('Fum', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_1 - ('OA', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_2 - ('OA', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_1 - ('aKG', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_2 - ('aKG', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_1 - ('G3P', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_2 - ('G3P', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_1 - ('2/3PG', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_2 - ('2/3PG', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_1 - ('E4P', ''): processed
+2020-05-04 16:44:12 - root - INFO - Sample_2 - ('E4P', ''): processed
+2020-05-04 16:44:13 - root - INFO - Sample_3 - ('Fum', 'TMS'): processed
+2020-05-04 16:44:13 - root - INFO - Sample_3 - ('OA', 'TMS'): processed
+2020-05-04 16:44:13 - root - INFO - Sample_3 - ('aKG', 'TMS'): processed
+2020-05-04 16:44:13 - root - INFO - Sample_3 - ('G3P', 'TMS'): processed
+2020-05-04 16:44:13 - root - INFO - Sample_3 - ('2/3PG', 'TMS'): processed
+2020-05-04 16:44:13 - root - INFO - Sample_3 - ('E4P', 'TMS'): processed
+2020-05-04 16:44:13 - root - INFO - ------------------------------------------------
+2020-05-04 16:44:13 - root - INFO - Correction process summary
+2020-05-04 16:44:13 - root - INFO - ------------------------------------------------
+2020-05-04 16:44:13 - root - INFO -    number of samples: 3
+2020-05-04 16:44:13 - root - INFO -    number of (metabolite, derivative): 12
+2020-05-04 16:44:13 - root - INFO -    errors: 0
--- a/test-data/results.tsv	Mon May 27 03:33:36 2019 -0400
+++ b/test-data/results.tsv	Mon May 04 11:38:09 2020 -0400
@@ -1,89 +1,89 @@
-sample	metabolite	derivative	isotopologue	area	corrected_area	isotopologue_fraction	residuum	mean_enrichment
-Sample_1	Fum		0	376000.0	379808.0494972019	0.41168665351703776	0.0	0.2897659902799015
-Sample_1	Fum		1	235000.0	236670.2675765585	0.2565348221938963	0.0	0.2897659902799015
-Sample_1	Fum		2	127000.0	124721.39583086275	0.13518969421410323	1.5800125112233282e-17	0.2897659902799015
-Sample_1	Fum		3	143000.0	142264.79335165164	0.15420556980234792	-3.1600250224466564e-17	0.2897659902799015
-Sample_1	Fum		4	40000.0	39101.348751418525	0.04238326027261486	0.0	0.2897659902799015
-Sample_2	Fum		0	376000.0	379808.0494972019	0.41168665351703776	0.0	0.2897659902799015
-Sample_2	Fum		1	235000.0	236670.2675765585	0.2565348221938963	0.0	0.2897659902799015
-Sample_2	Fum		2	127000.0	124721.39583086275	0.13518969421410323	1.5800125112233282e-17	0.2897659902799015
-Sample_2	Fum		3	143000.0	142264.79335165164	0.15420556980234792	-3.1600250224466564e-17	0.2897659902799015
-Sample_2	Fum		4	40000.0	39101.348751418525	0.04238326027261486	0.0	0.2897659902799015
-Sample_1	OA		0	0.0	0.0			
-Sample_1	OA		1	0.0	0.0			
-Sample_1	OA		2	0.0	0.0			
-Sample_1	OA		3	0.0	0.0			
-Sample_1	OA		4	0.0	0.0			
-Sample_2	OA		0	0.0	0.0			
-Sample_2	OA		1	0.0	0.0			
-Sample_2	OA		2	0.0	0.0			
-Sample_2	OA		3	0.0	0.0			
-Sample_2	OA		4	0.0	0.0			
-Sample_1	aKG		0	761000.0	770757.2822531819	0.5971059382536738	-1.9986617443107176e-07	0.15239309254478398
-Sample_1	aKG		1	95100.0	94408.21105160222	0.07313807438059411	-1.1232997022303625e-07	0.15239309254478398
-Sample_1	aKG		2	391000.0	387815.2020768239	0.3004405737538707	3.24340113523371e-05	0.15239309254478398
-Sample_1	aKG		3	39300.0	37840.9710506128	0.029315413611861445	1.0996123584802932e-05	0.15239309254478398
-Sample_1	aKG		4	0.0	0.0	0.0	-0.003157788575981497	0.15239309254478398
-Sample_1	aKG		5	0.0	0.0	0.0	-0.00030802561931763875	0.15239309254478398
-Sample_2	aKG		0	761000.0	770757.2822531819	0.5971059382536738	-1.9986617443107176e-07	0.15239309254478398
-Sample_2	aKG		1	95100.0	94408.21105160222	0.07313807438059411	-1.1232997022303625e-07	0.15239309254478398
-Sample_2	aKG		2	391000.0	387815.2020768239	0.3004405737538707	3.24340113523371e-05	0.15239309254478398
-Sample_2	aKG		3	39300.0	37840.9710506128	0.029315413611861445	1.0996123584802932e-05	0.15239309254478398
-Sample_2	aKG		4	0.0	0.0	0.0	-0.003157788575981497	0.15239309254478398
-Sample_2	aKG		5	0.0	0.0	0.0	-0.00030802561931763875	0.15239309254478398
-Sample_1	G3P		0	715000.0	720817.843203928	0.5037179457196655	-8.142070347386684e-17	0.2307972956362909
-Sample_1	G3P		1	557000.0	560128.1627924398	0.3914256703849595	8.142070347386684e-17	0.2307972956362909
-Sample_1	G3P		2	24800.0	19465.731702013378	0.013602935162211748	-5.088793967116678e-17	0.2307972956362909
-Sample_1	G3P		3	133000.0	130583.22551280692	0.09125344873316321	1.2213105521080026e-16	0.2307972956362909
-Sample_2	G3P		0	715000.0	720817.843203928	0.5037179457196655	-8.142070347386684e-17	0.2307972956362909
-Sample_2	G3P		1	557000.0	560128.1627924398	0.3914256703849595	8.142070347386684e-17	0.2307972956362909
-Sample_2	G3P		2	24800.0	19465.731702013378	0.013602935162211748	-5.088793967116678e-17	0.2307972956362909
-Sample_2	G3P		3	133000.0	130583.22551280692	0.09125344873316321	1.2213105521080026e-16	0.2307972956362909
-Sample_1	2/3PG		0	1430000.0	1441469.8983039188	0.26951520374142846	0.0	0.350613297990272
-Sample_1	2/3PG		1	2920000.0	2940779.0438875123	0.5498447550687304	0.0	0.350613297990272
-Sample_1	2/3PG		2	226000.0	213534.01511096465	0.03992498466743767	1.0898270157923124e-17	0.350613297990272
-Sample_1	2/3PG		3	765000.0	752597.6842841837	0.1407150565224034	2.1796540315846248e-17	0.350613297990272
-Sample_2	2/3PG		0	1430000.0	1441469.8983039188	0.26951520374142846	0.0	0.350613297990272
-Sample_2	2/3PG		1	2920000.0	2940779.0438875123	0.5498447550687304	0.0	0.350613297990272
-Sample_2	2/3PG		2	226000.0	213534.01511096465	0.03992498466743767	1.0898270157923124e-17	0.350613297990272
-Sample_2	2/3PG		3	765000.0	752597.6842841837	0.1407150565224034	2.1796540315846248e-17	0.350613297990272
-Sample_1	E4P		0	854.0	863.1453281237473	0.041336917027350754	2.4329549962951284e-14	0.3817239095188967
-Sample_1	E4P		1	10200.0	10307.12055255345	0.4936185983859252	-1.0461978931437058e-14	0.3817239095188967
-Sample_1	E4P		2	7760.0	7810.814463659301	0.37406793373042024	1.508268629282176e-14	0.3817239095188967
-Sample_1	E4P		3	1730.0	1644.6719684418108	0.0787650311963941	-2.3299698911887947e-14	0.3817239095188967
-Sample_1	E4P		4	320.0	254.98554081254488	0.012211519659909676	3.423846073733581e-14	0.3817239095188967
-Sample_2	E4P		0	854.0	863.1453281237473	0.041336917027350754	2.4329549962951284e-14	0.3817239095188967
-Sample_2	E4P		1	10200.0	10307.12055255345	0.4936185983859252	-1.0461978931437058e-14	0.3817239095188967
-Sample_2	E4P		2	7760.0	7810.814463659301	0.37406793373042024	1.508268629282176e-14	0.3817239095188967
-Sample_2	E4P		3	1730.0	1644.6719684418108	0.0787650311963941	-2.3299698911887947e-14	0.3817239095188967
-Sample_2	E4P		4	320.0	254.98554081254488	0.012211519659909676	3.423846073733581e-14	0.3817239095188967
-Sample_3	Fum	TMS	0	376000.0	425785.0538505561	0.45766573056460497	0.0	0.2626278340043467
-Sample_3	Fum	TMS	1	235000.0	229433.5002431335	0.24661234478564592	-3.1600250224466564e-17	0.2626278340043467
-Sample_3	Fum	TMS	2	127000.0	105318.33031467753	0.11320404544361702	-3.1600250224466564e-17	0.2626278340043467
-Sample_3	Fum	TMS	3	143000.0	141951.9567793512	0.15258061648002147	3.1600250224466564e-17	0.2626278340043467
-Sample_3	Fum	TMS	4	40000.0	27851.853810968023	0.029937262726110622	0.0	0.2626278340043467
-Sample_3	OA	TMS	0	0.0	0.0			
-Sample_3	OA	TMS	1	0.0	0.0			
-Sample_3	OA	TMS	2	0.0	0.0			
-Sample_3	OA	TMS	3	0.0	0.0			
-Sample_3	OA	TMS	4	0.0	0.0			
-Sample_3	aKG	TMS	0	761000.0	864080.4383954712	0.6634102607174354	-1.4215099326884681e-05	0.1302868347875265
-Sample_3	aKG	TMS	1	95100.0	33111.70372452174	0.02542198969516514	-7.027619573886684e-05	0.1302868347875265
-Sample_3	aKG	TMS	2	391000.0	400501.8154913149	0.3074910645197312	0.0005087109208496222	0.1302868347875265
-Sample_3	aKG	TMS	3	39300.0	4788.818975572151	0.003676685067668318	0.0011821047313132886	0.1302868347875265
-Sample_3	aKG	TMS	4	0.0	0.0	0.0	-0.013225164964720594	0.1302868347875265
-Sample_3	aKG	TMS	5	0.0	0.0	0.0	-0.000751685958158175	0.1302868347875265
-Sample_3	G3P	TMS	0	715000.0	806222.8908729891	0.5421097940219233	0.0011462823123024992	0.20893939381005114
-Sample_3	G3P	TMS	1	557000.0	555357.5466204376	0.37342621825203837	0.002864378095056404	0.20893939381005114
-Sample_3	G3P	TMS	2	24800.0	0.0	0.0	-0.03321751751634703	0.20893939381005114
-Sample_3	G3P	TMS	3	133000.0	125614.40709996362	0.08446398772603834	-2.6150701541736555e-12	0.20893939381005114
-Sample_3	2/3PG	TMS	0	1430000.0	1613070.9343452677	0.2934931923774996	0.0004794245823734611	0.3239815179271314
-Sample_3	2/3PG	TMS	1	2920000.0	3153601.731582657	0.5737879345430535	0.0011960645935207325	0.3239815179271314
-Sample_3	2/3PG	TMS	2	226000.0	0.0	0.0	-0.01388900414166337	0.3239815179271314
-Sample_3	2/3PG	TMS	3	765000.0	729437.5548178032	0.1327188730794469	1.6153633993476813e-12	0.3239815179271314
-Sample_3	E4P	TMS	0	854.0	967.700772009107	0.046150526549923535	-2.9138586415226663e-06	0.3493645351728113
-Sample_3	E4P	TMS	1	10200.0	11473.616488166983	0.5471871653687257	-1.4649378122356719e-05	0.3493645351728113
-Sample_3	E4P	TMS	2	7760.0	7752.336450775334	0.369715948921533	0.00010602215694356356	0.3493645351728113
-Sample_3	E4P	TMS	3	1730.0	774.7044932023791	0.036946359159817824	0.000251776357076686	0.3493645351728113
-Sample_3	E4P	TMS	4	320.0	0.0	0.0	-0.002903094538807673	0.3493645351728113
+sample	metabolite	derivative	isotopologue	isotopic_inchi	area	corrected_area	isotopologue_fraction	residuum	mean_enrichment
+Sample_1	Fum		0	/a(C4+0)	376000.0	379808.0494972019	0.41168665351703776	0.0	0.2897659902799015
+Sample_1	Fum		1	/a(C1+1),(C3+0)	235000.0	236670.2675765585	0.2565348221938963	0.0	0.2897659902799015
+Sample_1	Fum		2	/a(C2+1),(C2+0)	127000.0	124721.39583086275	0.13518969421410323	1.5800125112233282e-17	0.2897659902799015
+Sample_1	Fum		3	/a(C3+1),(C1+0)	143000.0	142264.79335165164	0.15420556980234792	-3.1600250224466564e-17	0.2897659902799015
+Sample_1	Fum		4	/a(C4+1)	40000.0	39101.348751418525	0.04238326027261486	0.0	0.2897659902799015
+Sample_2	Fum		0	/a(C4+0)	376000.0	379808.0494972019	0.41168665351703776	0.0	0.2897659902799015
+Sample_2	Fum		1	/a(C1+1),(C3+0)	235000.0	236670.2675765585	0.2565348221938963	0.0	0.2897659902799015
+Sample_2	Fum		2	/a(C2+1),(C2+0)	127000.0	124721.39583086275	0.13518969421410323	1.5800125112233282e-17	0.2897659902799015
+Sample_2	Fum		3	/a(C3+1),(C1+0)	143000.0	142264.79335165164	0.15420556980234792	-3.1600250224466564e-17	0.2897659902799015
+Sample_2	Fum		4	/a(C4+1)	40000.0	39101.348751418525	0.04238326027261486	0.0	0.2897659902799015
+Sample_1	OA		0	/a(C4+0)	0.0	0.0			
+Sample_1	OA		1	/a(C1+1),(C3+0)	0.0	0.0			
+Sample_1	OA		2	/a(C2+1),(C2+0)	0.0	0.0			
+Sample_1	OA		3	/a(C3+1),(C1+0)	0.0	0.0			
+Sample_1	OA		4	/a(C4+1)	0.0	0.0			
+Sample_2	OA		0	/a(C4+0)	0.0	0.0			
+Sample_2	OA		1	/a(C1+1),(C3+0)	0.0	0.0			
+Sample_2	OA		2	/a(C2+1),(C2+0)	0.0	0.0			
+Sample_2	OA		3	/a(C3+1),(C1+0)	0.0	0.0			
+Sample_2	OA		4	/a(C4+1)	0.0	0.0			
+Sample_1	aKG		0	/a(C5+0)	761000.0	770757.2822531819	0.5971059382536738	-1.9986617443107176e-07	0.15239309254478398
+Sample_1	aKG		1	/a(C1+1),(C4+0)	95100.0	94408.21105160222	0.07313807438059411	-1.1232997022303625e-07	0.15239309254478398
+Sample_1	aKG		2	/a(C2+1),(C3+0)	391000.0	387815.2020768239	0.3004405737538707	3.24340113523371e-05	0.15239309254478398
+Sample_1	aKG		3	/a(C3+1),(C2+0)	39300.0	37840.9710506128	0.029315413611861445	1.0996123584802932e-05	0.15239309254478398
+Sample_1	aKG		4	/a(C4+1),(C1+0)	0.0	0.0	0.0	-0.003157788575981497	0.15239309254478398
+Sample_1	aKG		5	/a(C5+1)	0.0	0.0	0.0	-0.00030802561931763875	0.15239309254478398
+Sample_2	aKG		0	/a(C5+0)	761000.0	770757.2822531819	0.5971059382536738	-1.9986617443107176e-07	0.15239309254478398
+Sample_2	aKG		1	/a(C1+1),(C4+0)	95100.0	94408.21105160222	0.07313807438059411	-1.1232997022303625e-07	0.15239309254478398
+Sample_2	aKG		2	/a(C2+1),(C3+0)	391000.0	387815.2020768239	0.3004405737538707	3.24340113523371e-05	0.15239309254478398
+Sample_2	aKG		3	/a(C3+1),(C2+0)	39300.0	37840.9710506128	0.029315413611861445	1.0996123584802932e-05	0.15239309254478398
+Sample_2	aKG		4	/a(C4+1),(C1+0)	0.0	0.0	0.0	-0.003157788575981497	0.15239309254478398
+Sample_2	aKG		5	/a(C5+1)	0.0	0.0	0.0	-0.00030802561931763875	0.15239309254478398
+Sample_1	G3P		0	/a(C3+0)	715000.0	720817.843203928	0.5037179457196655	-8.142070347386684e-17	0.2307972956362909
+Sample_1	G3P		1	/a(C1+1),(C2+0)	557000.0	560128.1627924398	0.3914256703849595	8.142070347386684e-17	0.2307972956362909
+Sample_1	G3P		2	/a(C2+1),(C1+0)	24800.0	19465.731702013378	0.013602935162211748	-5.088793967116678e-17	0.2307972956362909
+Sample_1	G3P		3	/a(C3+1)	133000.0	130583.22551280692	0.09125344873316321	1.2213105521080026e-16	0.2307972956362909
+Sample_2	G3P		0	/a(C3+0)	715000.0	720817.843203928	0.5037179457196655	-8.142070347386684e-17	0.2307972956362909
+Sample_2	G3P		1	/a(C1+1),(C2+0)	557000.0	560128.1627924398	0.3914256703849595	8.142070347386684e-17	0.2307972956362909
+Sample_2	G3P		2	/a(C2+1),(C1+0)	24800.0	19465.731702013378	0.013602935162211748	-5.088793967116678e-17	0.2307972956362909
+Sample_2	G3P		3	/a(C3+1)	133000.0	130583.22551280692	0.09125344873316321	1.2213105521080026e-16	0.2307972956362909
+Sample_1	2/3PG		0	/a(C3+0)	1430000.0	1441469.8983039188	0.26951520374142846	0.0	0.350613297990272
+Sample_1	2/3PG		1	/a(C1+1),(C2+0)	2920000.0	2940779.0438875123	0.5498447550687304	0.0	0.350613297990272
+Sample_1	2/3PG		2	/a(C2+1),(C1+0)	226000.0	213534.01511096465	0.03992498466743767	1.0898270157923124e-17	0.350613297990272
+Sample_1	2/3PG		3	/a(C3+1)	765000.0	752597.6842841837	0.1407150565224034	2.1796540315846248e-17	0.350613297990272
+Sample_2	2/3PG		0	/a(C3+0)	1430000.0	1441469.8983039188	0.26951520374142846	0.0	0.350613297990272
+Sample_2	2/3PG		1	/a(C1+1),(C2+0)	2920000.0	2940779.0438875123	0.5498447550687304	0.0	0.350613297990272
+Sample_2	2/3PG		2	/a(C2+1),(C1+0)	226000.0	213534.01511096465	0.03992498466743767	1.0898270157923124e-17	0.350613297990272
+Sample_2	2/3PG		3	/a(C3+1)	765000.0	752597.6842841837	0.1407150565224034	2.1796540315846248e-17	0.350613297990272
+Sample_1	E4P		0	/a(C4+0)	854.0	863.1453281237473	0.041336917027350754	2.4329549962951284e-14	0.3817239095188967
+Sample_1	E4P		1	/a(C1+1),(C3+0)	10200.0	10307.12055255345	0.4936185983859252	-1.0461978931437058e-14	0.3817239095188967
+Sample_1	E4P		2	/a(C2+1),(C2+0)	7760.0	7810.814463659301	0.37406793373042024	1.508268629282176e-14	0.3817239095188967
+Sample_1	E4P		3	/a(C3+1),(C1+0)	1730.0	1644.6719684418108	0.0787650311963941	-2.3299698911887947e-14	0.3817239095188967
+Sample_1	E4P		4	/a(C4+1)	320.0	254.98554081254488	0.012211519659909676	3.423846073733581e-14	0.3817239095188967
+Sample_2	E4P		0	/a(C4+0)	854.0	863.1453281237473	0.041336917027350754	2.4329549962951284e-14	0.3817239095188967
+Sample_2	E4P		1	/a(C1+1),(C3+0)	10200.0	10307.12055255345	0.4936185983859252	-1.0461978931437058e-14	0.3817239095188967
+Sample_2	E4P		2	/a(C2+1),(C2+0)	7760.0	7810.814463659301	0.37406793373042024	1.508268629282176e-14	0.3817239095188967
+Sample_2	E4P		3	/a(C3+1),(C1+0)	1730.0	1644.6719684418108	0.0787650311963941	-2.3299698911887947e-14	0.3817239095188967
+Sample_2	E4P		4	/a(C4+1)	320.0	254.98554081254488	0.012211519659909676	3.423846073733581e-14	0.3817239095188967
+Sample_3	Fum	TMS	0	/a(C4+0)	376000.0	425785.0538505561	0.45766573056460497	0.0	0.2626278340043467
+Sample_3	Fum	TMS	1	/a(C1+1),(C3+0)	235000.0	229433.5002431335	0.24661234478564592	-3.1600250224466564e-17	0.2626278340043467
+Sample_3	Fum	TMS	2	/a(C2+1),(C2+0)	127000.0	105318.33031467753	0.11320404544361702	-3.1600250224466564e-17	0.2626278340043467
+Sample_3	Fum	TMS	3	/a(C3+1),(C1+0)	143000.0	141951.9567793512	0.15258061648002147	3.1600250224466564e-17	0.2626278340043467
+Sample_3	Fum	TMS	4	/a(C4+1)	40000.0	27851.853810968023	0.029937262726110622	0.0	0.2626278340043467
+Sample_3	OA	TMS	0	/a(C4+0)	0.0	0.0			
+Sample_3	OA	TMS	1	/a(C1+1),(C3+0)	0.0	0.0			
+Sample_3	OA	TMS	2	/a(C2+1),(C2+0)	0.0	0.0			
+Sample_3	OA	TMS	3	/a(C3+1),(C1+0)	0.0	0.0			
+Sample_3	OA	TMS	4	/a(C4+1)	0.0	0.0			
+Sample_3	aKG	TMS	0	/a(C5+0)	761000.0	864080.4383954712	0.6634102607174354	-1.4215099326884681e-05	0.1302868347875265
+Sample_3	aKG	TMS	1	/a(C1+1),(C4+0)	95100.0	33111.70372452174	0.02542198969516514	-7.027619573886684e-05	0.1302868347875265
+Sample_3	aKG	TMS	2	/a(C2+1),(C3+0)	391000.0	400501.8154913149	0.3074910645197312	0.0005087109208496222	0.1302868347875265
+Sample_3	aKG	TMS	3	/a(C3+1),(C2+0)	39300.0	4788.818975572151	0.003676685067668318	0.0011821047313132886	0.1302868347875265
+Sample_3	aKG	TMS	4	/a(C4+1),(C1+0)	0.0	0.0	0.0	-0.013225164964720594	0.1302868347875265
+Sample_3	aKG	TMS	5	/a(C5+1)	0.0	0.0	0.0	-0.000751685958158175	0.1302868347875265
+Sample_3	G3P	TMS	0	/a(C3+0)	715000.0	806222.8908729891	0.5421097940219233	0.0011462823123024992	0.20893939381005114
+Sample_3	G3P	TMS	1	/a(C1+1),(C2+0)	557000.0	555357.5466204376	0.37342621825203837	0.002864378095056404	0.20893939381005114
+Sample_3	G3P	TMS	2	/a(C2+1),(C1+0)	24800.0	0.0	0.0	-0.03321751751634703	0.20893939381005114
+Sample_3	G3P	TMS	3	/a(C3+1)	133000.0	125614.40709996362	0.08446398772603834	-2.6150701541736555e-12	0.20893939381005114
+Sample_3	2/3PG	TMS	0	/a(C3+0)	1430000.0	1613070.9343452677	0.2934931923774996	0.0004794245823734611	0.3239815179271314
+Sample_3	2/3PG	TMS	1	/a(C1+1),(C2+0)	2920000.0	3153601.731582657	0.5737879345430535	0.0011960645935207325	0.3239815179271314
+Sample_3	2/3PG	TMS	2	/a(C2+1),(C1+0)	226000.0	0.0	0.0	-0.01388900414166337	0.3239815179271314
+Sample_3	2/3PG	TMS	3	/a(C3+1)	765000.0	729437.5548178032	0.1327188730794469	1.6153633993476813e-12	0.3239815179271314
+Sample_3	E4P	TMS	0	/a(C4+0)	854.0	967.700772009107	0.046150526549923535	-2.9138586415226663e-06	0.3493645351728113
+Sample_3	E4P	TMS	1	/a(C1+1),(C3+0)	10200.0	11473.616488166983	0.5471871653687257	-1.4649378122356719e-05	0.3493645351728113
+Sample_3	E4P	TMS	2	/a(C2+1),(C2+0)	7760.0	7752.336450775334	0.369715948921533	0.00010602215694356356	0.3493645351728113
+Sample_3	E4P	TMS	3	/a(C3+1),(C1+0)	1730.0	774.7044932023791	0.036946359159817824	0.000251776357076686	0.3493645351728113
+Sample_3	E4P	TMS	4	/a(C4+1)	320.0	0.0	0.0	-0.002903094538807673	0.3493645351728113