ms2rescore 3.1.0.dev1__tar.gz → 3.1.0.dev2__tar.gz
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.
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/PKG-INFO +1 -1
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/__init__.py +1 -1
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/core.py +2 -2
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/charts.py +2 -2
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/generate.py +1 -1
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/rescoring_engines/mokapot.py +2 -1
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/rescoring_engines/percolator.py +17 -5
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/LICENSE +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/README.md +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/__main__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/config_parser.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/exceptions.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/feature_generators/__init__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/feature_generators/base.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/feature_generators/basic.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/feature_generators/deeplc.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/feature_generators/im2deep.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/feature_generators/ionmob.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/feature_generators/maxquant.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/feature_generators/ms2pip.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/gui/__init__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/gui/__main__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/gui/app.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/gui/function2ctk.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/gui/widgets.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/__init__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/config_default.json +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/config_default_tims.json +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/config_schema.json +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/__init__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/config_icon.png +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/github-mark-white.png +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/github-mark.png +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/ms2rescore_logo.png +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/program_icon.ico +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/ms2rescore-gui-theme.json +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/parse_psms.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/parse_spectra.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/__init__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/__main__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/__init__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/about.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/base.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/config.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/features.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/log.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/metadata.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/overview.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/stats-card.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/style.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/target-decoy.html +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/texts.toml +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/utils.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/rescoring_engines/__init__.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/utils.py +0 -0
- {ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/pyproject.toml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ms2rescore
|
|
3
|
-
Version: 3.1.0.
|
|
3
|
+
Version: 3.1.0.dev2
|
|
4
4
|
Summary: MS²Rescore: Sensitive PSM rescoring with predicted MS² peak intensities and retention times.
|
|
5
5
|
Keywords: MS2Rescore,MS2PIP,DeepLC,Percolator,proteomics,mass spectrometry,peptide identification,rescoring,machine learning
|
|
6
6
|
Author: Ana Sílvia C. Silva, Robbin Bouwmeester, Louise Buur
|
|
@@ -175,8 +175,8 @@ def _fill_missing_precursor_info(psm_list, config):
|
|
|
175
175
|
get_missing_values(psm_list, config, rt_required=rt_required, im_required=im_required)
|
|
176
176
|
|
|
177
177
|
# Check if values are now present
|
|
178
|
-
for value_name in ["retention_time", "ion_mobility"]:
|
|
179
|
-
if (
|
|
178
|
+
for value_name, required in [("retention_time", rt_required), ("ion_mobility", im_required)]:
|
|
179
|
+
if required and (
|
|
180
180
|
0.0 in psm_list[value_name]
|
|
181
181
|
or None in psm_list[value_name]
|
|
182
182
|
or np.isnan(psm_list[value_name]).any()
|
|
@@ -373,7 +373,7 @@ def identification_overlap(
|
|
|
373
373
|
return figure
|
|
374
374
|
|
|
375
375
|
levels = before.levels # ["psms", "peptides", "proteins"] if all available
|
|
376
|
-
indexers = ["index", "
|
|
376
|
+
indexers = ["index", "peptide", "mokapot protein group"]
|
|
377
377
|
|
|
378
378
|
overlap_data = defaultdict(dict)
|
|
379
379
|
for level, indexer in zip(levels, indexers):
|
|
@@ -386,7 +386,7 @@ def identification_overlap(
|
|
|
386
386
|
set_after = set(df_after[df_after["mokapot q-value"] <= 0.01][indexer])
|
|
387
387
|
|
|
388
388
|
overlap_data["removed"][level] = -len(set_before - set_after)
|
|
389
|
-
overlap_data["retained"][level] = len(set_before
|
|
389
|
+
overlap_data["retained"][level] = len(set_after.intersection(set_before))
|
|
390
390
|
overlap_data["gained"][level] = len(set_after - set_before)
|
|
391
391
|
|
|
392
392
|
colors = ["#953331", "#316395", "#319545"]
|
|
@@ -185,7 +185,7 @@ def _get_stats_context(confidence_before, confidence_after):
|
|
|
185
185
|
"item": level_name,
|
|
186
186
|
"card_color": card_color,
|
|
187
187
|
"number": after,
|
|
188
|
-
"diff": f"{after - before:+}",
|
|
188
|
+
"diff": f"({after - before:+})",
|
|
189
189
|
"percentage": f"{increase:.1f}%",
|
|
190
190
|
"is_increase": increase > 0,
|
|
191
191
|
"bar_percentage": before / after * 100 if increase > 0 else after / before * 100,
|
|
@@ -31,6 +31,7 @@ from mokapot.dataset import LinearPsmDataset
|
|
|
31
31
|
from pyteomics.mass import nist_mass
|
|
32
32
|
|
|
33
33
|
logger = logging.getLogger(__name__)
|
|
34
|
+
logging.getLogger("numba").setLevel(logging.WARNING)
|
|
34
35
|
|
|
35
36
|
|
|
36
37
|
def rescore(
|
|
@@ -89,7 +90,7 @@ def rescore(
|
|
|
89
90
|
|
|
90
91
|
# Rescore
|
|
91
92
|
logger.debug(f"Mokapot brew options: `{kwargs}`")
|
|
92
|
-
confidence_results, models = brew(lin_psm_data, **kwargs)
|
|
93
|
+
confidence_results, models = brew(lin_psm_data, rng=8, **kwargs)
|
|
93
94
|
|
|
94
95
|
# Reshape confidence estimates to match PSMList
|
|
95
96
|
mokapot_values_targets = (
|
|
@@ -20,8 +20,8 @@ If you use Percolator through MS²Rescore, please cite:
|
|
|
20
20
|
import logging
|
|
21
21
|
import subprocess
|
|
22
22
|
from typing import Any, Dict, Optional
|
|
23
|
+
from copy import deepcopy
|
|
23
24
|
|
|
24
|
-
import numpy as np
|
|
25
25
|
import psm_utils
|
|
26
26
|
|
|
27
27
|
from ms2rescore.exceptions import MS2RescoreError
|
|
@@ -103,8 +103,15 @@ def rescore(
|
|
|
103
103
|
# Need to be able to link back to original PSMs, so reindex spectrum IDs, but copy PSM list
|
|
104
104
|
# to avoid modifying original...
|
|
105
105
|
# TODO: Better approach for this?
|
|
106
|
-
|
|
107
|
-
psm_list_reindexed
|
|
106
|
+
|
|
107
|
+
psm_list_reindexed = deepcopy(psm_list)
|
|
108
|
+
psm_list_reindexed.set_ranks()
|
|
109
|
+
psm_list_reindexed["spectrum_id"] = [
|
|
110
|
+
f"{psm.get_usi(as_url=False)}_{psm.rank}" for psm in psm_list_reindexed
|
|
111
|
+
]
|
|
112
|
+
spectrum_id_index = {
|
|
113
|
+
spectrum_id: index for index, spectrum_id in enumerate(psm_list_reindexed["spectrum_id"])
|
|
114
|
+
}
|
|
108
115
|
|
|
109
116
|
_write_pin_file(psm_list_reindexed, pin_filepath)
|
|
110
117
|
|
|
@@ -134,10 +141,13 @@ def rescore(
|
|
|
134
141
|
psm_list,
|
|
135
142
|
percolator_kwargs["results-psms"],
|
|
136
143
|
percolator_kwargs["decoy-results-psms"],
|
|
144
|
+
spectrum_id_index,
|
|
137
145
|
)
|
|
138
146
|
|
|
139
147
|
|
|
140
|
-
def _update_psm_scores(
|
|
148
|
+
def _update_psm_scores(
|
|
149
|
+
psm_list: psm_utils.PSMList, target_pout: str, decoy_pout: str, spectrum_id_index: list
|
|
150
|
+
):
|
|
141
151
|
"""
|
|
142
152
|
Update PSM scores with Percolator results.
|
|
143
153
|
|
|
@@ -150,7 +160,9 @@ def _update_psm_scores(psm_list: psm_utils.PSMList, target_pout: str, decoy_pout
|
|
|
150
160
|
psm_list_percolator = psm_utils.PSMList(psm_list=target_psms.psm_list + decoy_psms.psm_list)
|
|
151
161
|
|
|
152
162
|
# Sort by reindexed spectrum_id so order matches original PSM list
|
|
153
|
-
psm_list_percolator
|
|
163
|
+
psm_list_percolator = sorted(
|
|
164
|
+
psm_list_percolator, key=lambda psm: spectrum_id_index[psm["spectrum_id"]]
|
|
165
|
+
)
|
|
154
166
|
|
|
155
167
|
if not len(psm_list) == len(psm_list_percolator):
|
|
156
168
|
raise MS2RescoreError(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/config_default_tims.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/github-mark-white.png
RENAMED
|
File without changes
|
|
File without changes
|
{ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/ms2rescore_logo.png
RENAMED
|
File without changes
|
{ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/img/program_icon.ico
RENAMED
|
File without changes
|
{ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/package_data/ms2rescore-gui-theme.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ms2rescore-3.1.0.dev1 → ms2rescore-3.1.0.dev2}/ms2rescore/report/templates/target-decoy.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|