FlowIO 流式细胞术 FCS 处理
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/cn-flowio。
技能介绍
要解决什么问题
流式细胞实验产出的 FCS(Flow Cytometry Standard) 文件往往体积大、段结构复杂:HEADER 偏移、TEXT 键值元数据、二进制 DATA 事件区,有时还带 ANALYSIS 段或多数据集合并。后端脚本、批处理流水线或 Web 上传服务若自己解析二进制格式,容易在偏移不一致、空通道、PnE 对数变换等细节上踩坑。
技能如何工作
FlowIO 以 最小依赖 提供 FCS 2.0 / 3.0 / 3.1 读写。核心入口是 FlowData:标准读取事件为形状 (n_events, n_channels) 的 NumPy 数组;只需元数据时可用 only_text=True 降低内存。库会自动识别散射、荧光、时间等通道类型,并支持从 TEXT 段提取常见关键字。
典型步骤包括:读取或容错读取(如 ignore_offset_discrepancy=True)、按需开启 预处理(PnG 增益、PnE 指数变换、时间缩放)、修改事件后用 create_fcs() / write_fcs() 以 FCS 3.1 单精度 重新导出。多数据集文件应检测 MultipleDataSetsError,改用 read_multiple_data_sets() 按集读取;需要设门、补偿或 FlowJo/GatingML 时,文档建议与 FlowKit 配合,而不是在 FlowIO 里硬做高级分析。
适用边界与注意点
- FlowIO 不支持就地改事件矩阵,需提取 → 修改 →
create_fcs()重建。 - 大文件优先元数据探查或分块策略;空通道可用
null_channel_list排除。 - 复杂 FCS 操作与完整 API/异常说明见技能内 references/api_reference.md。
使用场景
- 仪器导出的 FCS 需先读 TEXT 元数据与通道名,再确认散射/荧光通道是否符合下游设门前检查
- 要把单文件内多个数据集拆开,分别读入 NumPy 并按数据集编号导出或转 CSV
- 目录下批量 FCS 需统一应用 PnG/PnE 预处理开关,过滤事件后写回新 FCS 3.1 文件
- Web 上传接口收到 FCS 后仅做结构探查与通道数校验,再决定是否交给 FlowKit 做补偿分析
适合人员
- 维护细胞仪数据入库脚本、需把 FCS 事件矩阵稳定转成 NumPy/DataFrame 的生物信息工程师
- 搭建实验数据平台后端、要在上传环节解析 FCS 元数据并处理偏移异常文件的 Python 开发者
- 做流式免疫表型流水线、在 FlowKit 设门前用 FlowIO 做批量读取与 CSV 导出的分析员
- 写论文复现脚本、需从原始 FCS 提取指定通道并保留 TEXT 关键字再导出的研究生