masster 0.5.4__py3-none-any.whl → 0.5.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of masster might be problematic. Click here for more details.

@@ -341,9 +341,6 @@ def _integrate_chrom_impl(self, **kwargs):
341
341
  uids = params.get("uids")
342
342
  rt_tol = params.get("rt_tol")
343
343
 
344
- if self.consensus_map is None:
345
- self.logger.error("No consensus map found.")
346
- return
347
344
  if uids is None:
348
345
  # get all consensus_id from consensus_df
349
346
  ids = self.consensus_df["consensus_uid"].to_list()
masster/wizard/wizard.py CHANGED
@@ -455,6 +455,9 @@ class Wizard:
455
455
  params_lines.append(' # === Processing Parameters ===')
456
456
  params_lines.append(f' "adducts": {params_dict.get("adducts", [])!r}, # Adduct specifications for feature detection and annotation')
457
457
  params_lines.append(f' "detector_type": {params_dict.get("detector_type", "unknown")!r}, # MS detector type ("orbitrap", "tof", "unknown")')
458
+ params_lines.append(f' "noise": {params_dict.get("noise", 50.0)}, # Noise threshold for feature detection')
459
+ params_lines.append(f' "chrom_fwhm": {params_dict.get("chrom_fwhm", 0.5)}, # Chromatographic peak full width at half maximum (seconds)')
460
+ params_lines.append(f' "chrom_peak_snr": {params_dict.get("chrom_peak_snr", 5.0)}, # Minimum signal-to-noise ratio for chromatographic peaks')
458
461
  params_lines.append('')
459
462
 
460
463
  # Alignment & Merging
@@ -643,6 +646,7 @@ class Wizard:
643
646
  ' # Step 4: Add sample5 files to study',
644
647
  ' print("\\nStep 4/7: Adding samples to study...")',
645
648
  ' study.add(str(Path(PARAMS[\'folder\']) / "*.sample5"))',
649
+ ' study.features_filter(study.features_select(chrom_coherence=0.1, chrom_prominence_scaled=1))',
646
650
  ' ',
647
651
  ' # Step 5: Core processing',
648
652
  ' print("\\nStep 5/7: Processing...")',
@@ -651,29 +655,14 @@ class Wizard:
651
655
  ' rt_tol=PARAMS[\'rt_tol\']',
652
656
  ' )',
653
657
  ' ',
654
- ' # Merge and create consensus features',
655
- ' # Use optimized method for large datasets (>500 samples)',
656
- ' num_samples = len(study.samples)',
657
- ' if num_samples > 500:',
658
- ' print(f" Large dataset detected ({num_samples} samples), using optimized qt_chunked + hierarchical method")',
659
- ' study.merge(',
660
- ' method="qt_chunked",',
661
- ' dechunking="hierarchical",',
662
- ' min_samples=PARAMS[\'min_samples_per_feature\'],',
663
- ' threads=PARAMS[\'num_cores\'],',
664
- ' rt_tol=PARAMS[\'rt_tol\'],',
665
- ' mz_tol=PARAMS[\'mz_tol\']',
666
- ' )',
667
- ' else:',
668
- ' print(f" Using standard merge method for {num_samples} samples")',
669
- ' study.merge(',
670
- ' min_samples=PARAMS[\'min_samples_per_feature\'],',
671
- ' threads=PARAMS[\'num_cores\'],',
672
- ' rt_tol=PARAMS[\'rt_tol\'],',
673
- ' mz_tol=PARAMS[\'mz_tol\']',
674
- ' )',
658
+ ' study.merge(',
659
+ ' method="qt",',
660
+ ' min_samples=PARAMS[\'min_samples_per_feature\'],',
661
+ ' threads=PARAMS[\'num_cores\'],',
662
+ ' rt_tol=PARAMS[\'rt_tol\'],'
663
+ ' )',
675
664
  ' study.find_iso()',
676
- ' study.fill(min_samples_rel=0.0)',
665
+ ' study.fill()',
677
666
  ' study.integrate()',
678
667
  ' ',
679
668
  ' # Step 6/7: Saving results',
@@ -689,8 +678,8 @@ class Wizard:
689
678
  ' study.plot_consensus_2d(filename="consensus.png")',
690
679
  ' study.plot_alignment(filename="alignment.html")',
691
680
  ' study.plot_alignment(filename="alignment.png")',
692
- ' study.plot_pca(filename="pca.html")',
693
- ' study.plot_pca(filename="pca.png")',
681
+ ' study.plot_samples_pca(filename="pca.html")',
682
+ ' study.plot_samples_pca(filename="pca.png")',
694
683
  ' study.plot_bpc(filename="bpc.html")',
695
684
  ' study.plot_bpc(filename="bpc.png")',
696
685
  ' study.plot_rt_correction(filename="rt_correction.html")',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: masster
3
- Version: 0.5.4
3
+ Version: 0.5.6
4
4
  Summary: Mass spectrometry data analysis package
5
5
  Project-URL: homepage, https://github.com/zamboni-lab/masster
6
6
  Project-URL: repository, https://github.com/zamboni-lab/masster
@@ -1,8 +1,8 @@
1
1
  masster/__init__.py,sha256=ueZ224WPNRRjQEYTaQUol818nwQgJwB93HbEfmtPRmg,1041
2
- masster/_version.py,sha256=gwA0FHD4Z-_YF_DHvv1fia5KlwKC04Tq47mBa_FkOEo,256
2
+ masster/_version.py,sha256=rLineW-O0OSBF7JBd31acdcshluNBFss77bXVJCx5BY,256
3
3
  masster/chromatogram.py,sha256=iYpdv8C17zVnlWvOFgAn9ns2uFGiF-GgoYf5QVVAbHs,19319
4
4
  masster/logger.py,sha256=tR65N23zfrNpcZNbZm2ot_Aual9XrGB1MWjLrovZkMs,16749
5
- masster/spectrum.py,sha256=XJSUrqXZSzfpWnD8v5IMClXMRZLKLYIk014qaMOS9_k,49738
5
+ masster/spectrum.py,sha256=TWIgDcl0lveG40cLVZTWGp8-FxMolu-P8EjZyRBtXL4,49850
6
6
  masster/data/dda/20250530_VH_IQX_KW_RP_HSST3_100mm_12min_pos_v4_DDA_OT_C-MiLUT_QC_dil2_01_20250602151849.sample5,sha256=LdJMF8uLoDm9ixZNHBoOzBH6hX7NGY7vTvqa2Pzetb8,6539174
7
7
  masster/data/dda/20250530_VH_IQX_KW_RP_HSST3_100mm_12min_pos_v4_DDA_OT_C-MiLUT_QC_dil3_01_20250602150634.sample5,sha256=hWUfslGoOTiQw59jENSBXP4sa6DdkbOi40FJ68ep61Q,6956773
8
8
  masster/data/dda/20250530_VH_IQX_KW_RP_HSST3_100mm_12min_pos_v4_MS1_C-MiLUT_C008_v6_r38_01.sample5,sha256=dSd2cIgYYdRcNSzkhqlZCeWKi3x8Hhhcx8BFMuiVG4c,11382948
@@ -10,6 +10,7 @@ masster/data/dda/20250530_VH_IQX_KW_RP_HSST3_100mm_12min_pos_v4_MS1_C-MiLUT_C008
10
10
  masster/data/dda/20250530_VH_IQX_KW_RP_HSST3_100mm_12min_pos_v4_MS1_C-MiLUT_C017_v5_r99_01.sample5,sha256=h2OOAWWTwKXzTNewhiYeL-cMYdp_JYLPya8Q9Nv9Lvw,12389587
11
11
  masster/data/libs/aa.csv,sha256=Sja1DyMsiaM2NfLcct4kAAcXYwPCukJJW8sDkup9w_c,1924
12
12
  masster/data/libs/ccm.csv,sha256=Q6nylV1152uTpX-ydqWeGrc6L9kgv45xN_fBZ4f7Tvo,12754
13
+ masster/data/libs/hilic.csv,sha256=Ao2IN9t7GiFWEBJg21TmNJZjTbyHC3e0dJcfftAKsM4,671265
13
14
  masster/data/libs/urine.csv,sha256=iRrR4N8Wzb8KDhHJA4LqoQC35pp93FSaOKvXPrgFHis,653736
14
15
  masster/data/wiff/2025_01_14_VW_7600_LpMx_DBS_CID_2min_TOP15_030msecMS1_005msecReac_CE35_DBS-ON_3.timeseries.data,sha256=01vC6m__Qqm2rLvlTMZoeKIKowFvovBTUnrNl8Uav3E,24576
15
16
  masster/data/wiff/2025_01_14_VW_7600_LpMx_DBS_CID_2min_TOP15_030msecMS1_005msecReac_CE35_DBS-ON_3.wiff,sha256=go5N9gAM1rn4PZAVaoCmdteY9f7YGEM9gyPdSmkQ8PE,1447936
@@ -18,18 +19,18 @@ masster/data/wiff/2025_01_14_VW_7600_LpMx_DBS_CID_2min_TOP15_030msecMS1_005msecR
18
19
  masster/lib/__init__.py,sha256=TcePNx3SYZHz6763TL9Sg4gUNXaRWjlrOtyS6vsu-hg,178
19
20
  masster/lib/lib.py,sha256=SSN06UtiM-hIdjS3eCiIHsJ_8S4YHRGOLGmdPIh-efo,27481
20
21
  masster/sample/__init__.py,sha256=HL0m1ept0PMAYUCQtDDnkdOS12IFl6oLAq4TZQz83uY,170
21
- masster/sample/adducts.py,sha256=5aEZPVcjGywCsN06ZuUWIi7h1817NsUp6o8L26P0bpY,32592
22
+ masster/sample/adducts.py,sha256=nl5KEuat0hvktgar6Ca4PbY8JXt9SD05EeTn0HOKt64,32592
22
23
  masster/sample/h5.py,sha256=tlTPGrT9AMUhduvY_YPDzk6dZF5dI-9NRc1xeiuze5c,115442
23
- masster/sample/helpers.py,sha256=avW7gKT1wH47NUU0tEB3hkzm6ayQdfHpWR730kgWPSI,41342
24
+ masster/sample/helpers.py,sha256=27eZFFidr02-DlSi4-eF4bpSk_y-qU3eoFCAOshRO20,42138
24
25
  masster/sample/lib.py,sha256=E-j9c3Wd8f9a-H8xj7CAOwlA8KcyXPoFyYm3c8r7LtI,33755
25
26
  masster/sample/load.py,sha256=swjRBCoFGni9iPztHIKPVB5ru_xDMVryB_inPXdujTw,51819
26
27
  masster/sample/parameters.py,sha256=Gg2KcuNbV_wZ_Wwv93QlM5J19ji0oSIvZLPV1NoBmq0,4456
27
- masster/sample/plot.py,sha256=0v4FzO_yzpUdATjdHZU4YO7UoW73Xlf51vVQByQ33X0,82574
28
+ masster/sample/plot.py,sha256=vA37dwmpeymVW8xobrsLhsD7X8x7EQIOw50Csiica84,86675
28
29
  masster/sample/processing.py,sha256=CjaLCElDKECeCvYWqzT5EH_-rPQ0Y4A30zKjZfqmS5s,55915
29
30
  masster/sample/quant.py,sha256=tHNjvUFTdehKR31BXBZnVsBxMD9XJHgaltITOjr71uE,7562
30
- masster/sample/sample.py,sha256=O2PY7DnRx7VkASBU4qKQcTqND1aRfd0OCjKK9Rjn5uw,20574
31
+ masster/sample/sample.py,sha256=VhQik_ev1liRqGUtbZvV1NOjfFzgfZI1orfQT87gai4,20643
31
32
  masster/sample/sample5_schema.json,sha256=H5e2T6rHIDzul2kp_yP-ILUUWUpW08wP2pEQjMR0nSk,3977
32
- masster/sample/save.py,sha256=2yQtcQcRJjgAKPImTydj7LpyyMop_Q9JKRlNEK4yU6k,36339
33
+ masster/sample/save.py,sha256=IwWfcsmWLWM-2ASdhHXWAiPyrZBv5JUynvciNPppDUs,38643
33
34
  masster/sample/sciex.py,sha256=vnbxsq_qnAQVuzcpziP1o3IC4kM5amGBcPmC2TAuDLw,46319
34
35
  masster/sample/defaults/__init__.py,sha256=A09AOP44cxD_oYohyt7XFUho0zndRcrzVD4DUaGnKH4,447
35
36
  masster/sample/defaults/find_adducts_def.py,sha256=Bu2KiBJRxD0SAnOPNMm_Nk-6fx6QYoRXjFNGzz-0_o0,13570
@@ -41,13 +42,13 @@ masster/study/__init__.py,sha256=55axdFuqRX4aXtJ8ocnhcLB32fNtmmJpCi58moO0r4g,237
41
42
  masster/study/analysis.py,sha256=L-wXBnGZCLB5UUDrjIdOiMG9zdej3Tw_SftcEmmTukM,84264
42
43
  masster/study/export.py,sha256=joFK9jip2UM4lVAvhkdKVeUdNdM4D8uP2WE49IaVJgw,60172
43
44
  masster/study/h5.py,sha256=84plxM7gYFdn_mNbcg8XxE_NRZmiIBqs_XhfHMiXshk,95364
44
- masster/study/helpers.py,sha256=s5jLUmxDAs_Qn6dVwpkwlwuwliMDEBjmeikS6OrxdSE,183137
45
+ masster/study/helpers.py,sha256=ZhvLetoEROHMSrMKZo8jXQMJhTochITgAG_vwjs_8Mg,183129
45
46
  masster/study/id.py,sha256=r_vZQYNxqNXf_pjgk_CLkl1doLnLa956mTuVmlHN52o,80075
46
47
  masster/study/load.py,sha256=7d11294YYEGrSKox3cwvetv2vqcstYT1SnyAhHH5V_Q,107706
47
48
  masster/study/merge.py,sha256=D9xNRlEaMPTPZQAZhiBBSzQ-27lD60fCDmKb0cYST-M,149764
48
49
  masster/study/parameters.py,sha256=bTvmcwX9INxzcrEAmTiFH8qeWVhwkvMTZjuP394pz5o,3279
49
- masster/study/plot.py,sha256=wg2X3P-0J6mW0N0dJS0dX6KLGtt9mXj6w1j3E9nvlvo,103086
50
- masster/study/processing.py,sha256=O6X7wgeq0kXSyMO12g23cqB8cYO60gLRMxuJC2uhSMY,58644
50
+ masster/study/plot.py,sha256=LEIzoYiUyq1aswh-sw8S-ESvN2DaQKN5l22yLW8gZe8,107647
51
+ masster/study/processing.py,sha256=n5208v-JQGq3bBP-ncgl2__hHWSQQYHx2fl4Mm0THdI,58538
51
52
  masster/study/save.py,sha256=47AP518epJJ9TjaGGyrLKsMsyjIk8_J4ka7bmsnRtFQ,9268
52
53
  masster/study/study.py,sha256=TnZkTLB8Z5R-AVqoHfUNvmkTthfUI4OPmBo_LYR_e8g,38654
53
54
  masster/study/study5_schema.json,sha256=0IZxM9VVI0TUlx74BPzJDT44kySi6NZZ6iLR0j8bU_s,7736
@@ -65,9 +66,9 @@ masster/study/defaults/study_def.py,sha256=h8dYbi9xv0sesCSQik49Z53IkskMmNtW6ixl7
65
66
  masster/wizard/README.md,sha256=mL1A3YWJZOefpJ6D0-HqGLkVRmUlOpwyVFdvJBeeoZM,14149
66
67
  masster/wizard/__init__.py,sha256=a2hcZnHASjfuw1lqZhZnvTR58rc33rRnoGAY_JfvGhI,683
67
68
  masster/wizard/example.py,sha256=xEZFTH9UZ8HKOm6s3JL8Js0Uw5ChnISWBHSZCL32vsM,7983
68
- masster/wizard/wizard.py,sha256=6VqeOyKJ-9n0376CVbNuQo4vKLFjE0Sl2KexWZclQew,38580
69
- masster-0.5.4.dist-info/METADATA,sha256=wjgydggoAm3JBUOi0PrJ1oPUgUTvB3qKZ1MorC8NBOE,45113
70
- masster-0.5.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
71
- masster-0.5.4.dist-info/entry_points.txt,sha256=ZHguQ_vPmdbpqq2uGtmEOLJfgP-DQ1T0c07Lxh30wc8,58
72
- masster-0.5.4.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
73
- masster-0.5.4.dist-info/RECORD,,
69
+ masster/wizard/wizard.py,sha256=UobIGFZtp1s_9WJlpl6DQ2-pp7flPQ6dlYZJqYE92OM,38131
70
+ masster-0.5.6.dist-info/METADATA,sha256=Vbsgbvaxv5TP83vvlXhTlG7vdrkUaN8fvdkSwVil3HY,45113
71
+ masster-0.5.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
72
+ masster-0.5.6.dist-info/entry_points.txt,sha256=ZHguQ_vPmdbpqq2uGtmEOLJfgP-DQ1T0c07Lxh30wc8,58
73
+ masster-0.5.6.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
74
+ masster-0.5.6.dist-info/RECORD,,