Proseg项目与MERSCOPE数据格式兼容性解析
背景介绍
Proseg是一个用于空间转录组数据分析的开源工具,近期在预处理MERSCOPE平台输出数据时遇到了一些格式兼容性问题。MERSCOPE是Vizgen公司开发的高分辨率空间转录组测序平台,其标准输出文件detected_transcripts.csv
与Proseg预设的输入格式存在差异。
数据格式差异分析
MERSCOPE的标准输出文件包含以下关键列:
global_x
,global_y
,global_z
:转录本的全局坐标fov
:视野编号gene
:基因名称transcript_id
:转录本ID(字符串格式)cell_id
:细胞ID(未分配的转录本标记为-1)
与Proseg的默认预期相比,主要存在三个差异点:
- 未分配细胞的标识符不同(Proseg默认为0,MERSCOPE使用-1)
- 转录本ID的格式不同(Proseg预期为整数,MERSCOPE输出为字符串)
- 坐标列名称不一致
临时解决方案
在Proseg 1.0.3版本发布前,用户可以采用以下预处理步骤使MERSCOPE数据与Proseg兼容:
- 细胞ID转换:将未分配细胞的标识符从-1改为0
df['cell_id'] = df['cell_id'].replace(-1, 0)
- 转录本ID转换:将字符串格式的转录本ID转换为整数
from sklearn.preprocessing import LabelEncoder
encoder = LabelEncoder()
df['transcript'] = encoder.fit_transform(df['transcript_id'])
- 指定列映射:运行时明确指定各列对应关系
proseg -x 'global_x' -y 'global_y' -z 'global_z' \
--fov-column 'fov' --gene-column 'gene' \
--transcript-id-column 'transcript' \
--cell-id-unassigned "0" --cell-id-column 'cell_id' \
detected_transcripts.csv
最新版本改进
Proseg 1.0.3版本已正式添加了对MERSCOPE格式的原生支持:
- 新增
--merscope
选项,自动识别MERSCOPE标准格式 - 正确处理未分配细胞的-1标识符
- 支持字符串格式的转录本ID
用户现在可以直接使用:
proseg detected_transcripts.csv --merscope
技术建议
对于空间转录组数据分析人员,在处理不同平台数据时应注意:
- 始终验证输入数据的列名和格式
- 对于未分配转录本,明确了解平台的标识符约定
- 考虑使用最新版本的Proseg以获得最佳兼容性
- 在预处理步骤中保留原始数据备份
Proseg的持续更新体现了其对多种空间转录组技术平台的良好适应性,为研究人员提供了更便捷的分析工具。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考