重要前提
安装AI Skills的关键前提是:必须科学上网,且开启TUN模式,这一点至关重要,直接决定安装能否顺利完成,在此郑重提醒三遍:科学上网,科学上网,科学上网。查看完整安装教程 →
matchms by k-dense-ai/claude-scientific-skills
npx skills add https://github.com/k-dense-ai/claude-scientific-skills --skill matchmsMatchms 是一个用于质谱数据处理和分析的开源 Python 库。支持从多种格式导入谱图、标准化元数据、过滤峰、计算谱图相似度,并构建可复现的分析工作流。
从多种文件格式加载谱图并导出处理后的数据:
from matchms.importing import load_from_mgf, load_from_mzml, load_from_msp, load_from_json
from matchms.exporting import save_as_mgf, save_as_msp, save_as_json
# 导入谱图
spectra = list(load_from_mgf("spectra.mgf"))
spectra = list(load_from_mzml("data.mzML"))
spectra = list(load_from_msp("library.msp"))
# 导出处理后的谱图
save_as_mgf(spectra, "output.mgf")
save_as_json(spectra, "output.json")
支持的格式:
有关导入/导出的详细文档,请查阅 references/importing_exporting.md。
应用全面的过滤器来标准化元数据并精炼峰数据:
from matchms.filtering import default_filters, normalize_intensities
from matchms.filtering import select_by_relative_intensity, require_minimum_number_of_peaks
# 应用默认的元数据协调过滤器
spectrum = default_filters(spectrum)
# 归一化峰强度
spectrum = normalize_intensities(spectrum)
# 按相对强度过滤峰
spectrum = select_by_relative_intensity(spectrum, intensity_from=0.01, intensity_to=1.0)
# 要求最小峰数
spectrum = require_minimum_number_of_peaks(spectrum, n_required=5)
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
过滤器类别:
Matchms 提供 40 多个过滤器。完整的过滤器参考,请查阅 references/filtering.md。
使用各种相似度度量比较谱图:
from matchms import calculate_scores
from matchms.similarity import CosineGreedy, ModifiedCosine, CosineHungarian
# 计算余弦相似度(快速、贪婪算法)
scores = calculate_scores(references=library_spectra,
queries=query_spectra,
similarity_function=CosineGreedy())
# 计算修正余弦相似度(考虑前体 m/z 差异)
scores = calculate_scores(references=library_spectra,
queries=query_spectra,
similarity_function=ModifiedCosine(tolerance=0.1))
# 获取最佳匹配
best_matches = scores.scores_by_query(query_spectra[0], sort=True)[:10]
可用的相似度函数:
有关相似度函数的详细文档,请查阅 references/similarity.md。
创建可复现的多步骤分析工作流:
from matchms import SpectrumProcessor
from matchms.filtering import default_filters, normalize_intensities
from matchms.filtering import select_by_relative_intensity, remove_peaks_around_precursor_mz
# 定义一个处理流程
processor = SpectrumProcessor([
default_filters,
normalize_intensities,
lambda s: select_by_relative_intensity(s, intensity_from=0.01),
lambda s: remove_peaks_around_precursor_mz(s, mz_tolerance=17)
])
# 应用于所有谱图
processed_spectra = [processor(s) for s in spectra]
核心的 Spectrum 类包含质谱数据:
from matchms import Spectrum
import numpy as np
# 创建一个谱图
mz = np.array([100.0, 150.0, 200.0, 250.0])
intensities = np.array([0.1, 0.5, 0.9, 0.3])
metadata = {"precursor_mz": 250.5, "ionmode": "positive"}
spectrum = Spectrum(mz=mz, intensities=intensities, metadata=metadata)
# 访问谱图属性
print(spectrum.peaks.mz) # m/z 值
print(spectrum.peaks.intensities) # 强度值
print(spectrum.get("precursor_mz")) # 元数据字段
# 可视化谱图
spectrum.plot()
spectrum.plot_against(reference_spectrum)
标准化和协调谱图元数据:
# 元数据会自动协调
spectrum.set("Precursor_mz", 250.5) # 会被协调为小写键
print(spectrum.get("precursor_mz")) # 返回 250.5
# 推导化学信息
from matchms.filtering import derive_inchi_from_smiles, derive_inchikey_from_inchi
from matchms.filtering import add_fingerprint
spectrum = derive_inchi_from_smiles(spectrum)
spectrum = derive_inchikey_from_inchi(spectrum)
spectrum = add_fingerprint(spectrum, fingerprint_type="morgan", nbits=2048)
针对典型的质谱分析工作流,包括:
详细示例请查阅 references/workflows.md。
uv pip install matchms
如需分子结构处理(SMILES, InChI):
uv pip install matchms[chemistry]
详细的参考文档可在 references/ 目录中找到:
filtering.md - 完整的过滤器函数参考及描述similarity.md - 所有相似度度量及其适用场景importing_exporting.md - 文件格式详情和 I/O 操作workflows.md - 常见分析模式和示例如需了解 matchms 特定功能的详细信息,请根据需要加载这些参考文档。
每周安装次数
54
代码仓库
GitHub 星标数
17.3K
首次出现
2026年1月20日
安全审计
已安装于
opencode47
codex46
gemini-cli46
claude-code44
cursor44
github-copilot43
Matchms is an open-source Python library for mass spectrometry data processing and analysis. Import spectra from various formats, standardize metadata, filter peaks, calculate spectral similarities, and build reproducible analytical workflows.
Load spectra from multiple file formats and export processed data:
from matchms.importing import load_from_mgf, load_from_mzml, load_from_msp, load_from_json
from matchms.exporting import save_as_mgf, save_as_msp, save_as_json
# Import spectra
spectra = list(load_from_mgf("spectra.mgf"))
spectra = list(load_from_mzml("data.mzML"))
spectra = list(load_from_msp("library.msp"))
# Export processed spectra
save_as_mgf(spectra, "output.mgf")
save_as_json(spectra, "output.json")
Supported formats:
For detailed importing/exporting documentation, consult references/importing_exporting.md.
Apply comprehensive filters to standardize metadata and refine peak data:
from matchms.filtering import default_filters, normalize_intensities
from matchms.filtering import select_by_relative_intensity, require_minimum_number_of_peaks
# Apply default metadata harmonization filters
spectrum = default_filters(spectrum)
# Normalize peak intensities
spectrum = normalize_intensities(spectrum)
# Filter peaks by relative intensity
spectrum = select_by_relative_intensity(spectrum, intensity_from=0.01, intensity_to=1.0)
# Require minimum peaks
spectrum = require_minimum_number_of_peaks(spectrum, n_required=5)
Filter categories:
Matchms provides 40+ filters. For the complete filter reference, consult references/filtering.md.
Compare spectra using various similarity metrics:
from matchms import calculate_scores
from matchms.similarity import CosineGreedy, ModifiedCosine, CosineHungarian
# Calculate cosine similarity (fast, greedy algorithm)
scores = calculate_scores(references=library_spectra,
queries=query_spectra,
similarity_function=CosineGreedy())
# Calculate modified cosine (accounts for precursor m/z differences)
scores = calculate_scores(references=library_spectra,
queries=query_spectra,
similarity_function=ModifiedCosine(tolerance=0.1))
# Get best matches
best_matches = scores.scores_by_query(query_spectra[0], sort=True)[:10]
Available similarity functions:
For detailed similarity function documentation, consult references/similarity.md.
Create reproducible, multi-step analysis workflows:
from matchms import SpectrumProcessor
from matchms.filtering import default_filters, normalize_intensities
from matchms.filtering import select_by_relative_intensity, remove_peaks_around_precursor_mz
# Define a processing pipeline
processor = SpectrumProcessor([
default_filters,
normalize_intensities,
lambda s: select_by_relative_intensity(s, intensity_from=0.01),
lambda s: remove_peaks_around_precursor_mz(s, mz_tolerance=17)
])
# Apply to all spectra
processed_spectra = [processor(s) for s in spectra]
The core Spectrum class contains mass spectral data:
from matchms import Spectrum
import numpy as np
# Create a spectrum
mz = np.array([100.0, 150.0, 200.0, 250.0])
intensities = np.array([0.1, 0.5, 0.9, 0.3])
metadata = {"precursor_mz": 250.5, "ionmode": "positive"}
spectrum = Spectrum(mz=mz, intensities=intensities, metadata=metadata)
# Access spectrum properties
print(spectrum.peaks.mz) # m/z values
print(spectrum.peaks.intensities) # Intensity values
print(spectrum.get("precursor_mz")) # Metadata field
# Visualize spectra
spectrum.plot()
spectrum.plot_against(reference_spectrum)
Standardize and harmonize spectrum metadata:
# Metadata is automatically harmonized
spectrum.set("Precursor_mz", 250.5) # Gets harmonized to lowercase key
print(spectrum.get("precursor_mz")) # Returns 250.5
# Derive chemical information
from matchms.filtering import derive_inchi_from_smiles, derive_inchikey_from_inchi
from matchms.filtering import add_fingerprint
spectrum = derive_inchi_from_smiles(spectrum)
spectrum = derive_inchikey_from_inchi(spectrum)
spectrum = add_fingerprint(spectrum, fingerprint_type="morgan", nbits=2048)
For typical mass spectrometry analysis workflows, including:
Consult references/workflows.md for detailed examples.
uv pip install matchms
For molecular structure processing (SMILES, InChI):
uv pip install matchms[chemistry]
Detailed reference documentation is available in the references/ directory:
filtering.md - Complete filter function reference with descriptionssimilarity.md - All similarity metrics and when to use themimporting_exporting.md - File format details and I/O operationsworkflows.md - Common analysis patterns and examplesLoad these references as needed for detailed information about specific matchms capabilities.
Weekly Installs
54
Repository
GitHub Stars
17.3K
First Seen
Jan 20, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
opencode47
codex46
gemini-cli46
claude-code44
cursor44
github-copilot43
免费AI数据抓取智能体:自动化收集、丰富与存储网站/API数据
1,300 周安装