名称: bio-instrument-data 描述: 将实验室仪器输出文件(PDF、CSV、Excel、TXT)转换为Allotrope Simple Model (ASM) JSON格式或扁平化的2D CSV。当科学家需要标准化仪器数据用于LIMS系统、数据湖或下游分析时使用此技能。支持自动检测仪器类型。输出包括完整ASM JSON、扁平CSV以便轻松导入,以及可导出的Python代码供数据工程师使用。常见触发场景包括转换仪器文件、标准化实验室数据、准备数据上传到LIMS/ELN系统,或为生产管道生成解析器代码。 要求: [python, bash]
仪器数据到Allotrope转换器
将仪器文件转换为标准化的Allotrope Simple Model (ASM) 格式,用于LIMS上传、数据湖或传递给数据工程团队。
注意: 此技能利用了生物信息学包。 脚本和参考位于:
src-tauri/resources/packs/bio-informatics-pack/allotrope-conversion/
工作流程概述
- 检测仪器类型 从文件内容(自动检测或用户指定)
- 解析文件 使用allotropy库(原生)或灵活的回退解析器
- 生成输出:
- ASM JSON(完整语义结构)
- 扁平化CSV(2D表格格式)
- Python解析器代码(供数据工程师使用)
- 交付 文件,附有摘要和使用说明
当不确定时: 如果不确定如何将字段映射到ASM(例如,这是原始数据还是计算数据?),请向用户澄清。参考包的
references/field_classification_guide.md获取指导。
快速开始
# 先安装要求
pip install allotropy pandas openpyxl pdfplumber --break-system-packages
# 核心转换
from allotropy.parser_factory import Vendor
from allotropy.to_allotrope import allotrope_from_file
# 使用allotropy转换
asm = allotrope_from_file("instrument_data.csv", Vendor.BECKMAN_VI_CELL_BLU)
输出格式选择
ASM JSON(默认) - 带有本体URI的完整语义结构
- 最适合:期望ASM的LIMS系统、数据湖、长期归档
- 验证符合Allotrope模式
扁平化CSV - 2D表格表示
- 最适合:快速分析、Excel用户、不支持JSON的系统
- 每个测量成为一行,元数据重复
两者 - 生成两种格式以获得最大灵活性
计算数据处理
重要: 将原始测量与计算/派生值分开。
- 原始数据 →
measurement-document(直接仪器读数) - 计算数据 →
calculated-data-aggregate-document(派生值)
计算值必须通过data-source-aggregate-document包含可追溯性。
验证
在交付给用户之前始终验证ASM输出:
# 运行包中的验证脚本
python src-tauri/resources/packs/bio-informatics-pack/allotrope-conversion/scripts/validate_asm.py output.json