PyXLMS
A python package to process protein cross-linking data.
Install / Use
/learn @hgb-bin-proteomics/PyXLMSREADME
pyXLMS
a python package to process protein cross-linking data
<img src="https://github.com/hgb-bin-proteomics/pyXLMS/raw/master/docs/logo/logo_padded_shadow.png" align="left" width="200px" style="padding: 5px 20px 10px 20px;"/>pyXLMS is a python package and web application with graphical user interface that aims to simplify and streamline the intermediate step of connecting crosslink search engine results with down-stream analysis tools, enabling researchers even without bioinformatics knowledge to conduct in-depth crosslink analyses and shifting the focus from data transformation to data interpretation and therefore gaining biological insight. Currently pyXLMS supports input from seven different crosslink search engines: MaxLynx (part of MaxQuant), MeroX, MS Annika, pLink 2 and pLink 3, Scout, xiSearch and xiFDR, XlinkX, as well as the mzIdentML format of the HUPO Proteomics Standards Initiative, and a well-documented and human-readable custom tabular format. Down-stream analysis is facilitated by functionality that is directly available within pyXLMS such as validation, annotation, aggregation, filtering, and visualization - and much more - of crosslink-spectrum-matches and crosslinks. In addition, the data can easily be exported to the required data format of the various available down-stream analysis tools such as AlphaLink2, ProXL, xiNET, xiVIEW, xiFDR, XlinkDB, xlms-tools, PyMOL (via PyXlinkViewer), ChimeraX (via XMAS), or IMP-X-FDR.
Installation
pyXLMS supports python version 3.7 and greater!
pyXLMS can easily be installed via pip:
pip install pyxlms
Quick Start
After installation you can use pyXLMS in python like this:
This example shows reading of MS Annika crosslink-spectrum-matches and exporting them to xiFDR format for external validation.
>>> import pyXLMS
>>> pr = pyXLMS.parser.read(
... "data/ms_annika/XLpeplib_Beveridge_QEx-HFX_DSS_R1_CSMs.xlsx",
... engine="MS Annika",
... crosslinker="DSS"
... )
Reading MS Annika CSMs...: 100%|████████████████| 826/826 [00:00<00:00, 20731.70it/s]
>>> _ = pyXLMS.transform.summary(pr)
Number of CSMs: 826.0
Number of unique CSMs: 826.0
Number of intra CSMs: 803.0
Number of inter CSMs: 23.0
Number of target-target CSMs: 786.0
Number of target-decoy CSMs: 39.0
Number of decoy-decoy CSMs: 1.0
Minimum CSM score: 1.11
Maximum CSM score: 452.99
>>> _ = pyXLMS.exporter.to_xifdr(
... pr["crosslink-spectrum-matches"],
... filename="msannika_CSMs_for_xiFDR.csv"
... )
Web App
The web app is publicly accessible for free via hgb-bin-proteomics.github.io/pyXLMS-app.
Additionally, it can be run locally or self-hosted as described here: pyXLMS Web Application.
User Guide, Examples and Documentation
- A user guide that documents all available functionality is available via hgb-bin-proteomics.github.io/pyXLMS-docs.
- Example jupyter notebooks can be found in
/examples. - A full documentation of the python package can be accessed via hgb-bin-proteomics.github.io/pyXLMS.
Citing
If you are using pyXLMS please cite the following publication:
- Manuscript in preparation
(wip)
Acknowledgements
We thank Melanie Birklbauer for designing the logo.
Contact
- proteomics@fh-hagenberg.at
- micha.birklbauer@fh-hagenberg.at (primary developer)
Related Skills
claude-opus-4-5-migration
110.9kMigrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5
model-usage
351.8kUse CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
TrendRadar
51.2k⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。
mcp-for-beginners
15.8kThis open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust and Python. Designed for developers, it focuses on practical techniques for building modular, scalable, and secure AI workflows from session setup to service orchestration.
