QPCR 仪 LIS 输出文件格式解析(lis_out.txt 样本)

来源:天隆(TL)全自动 QPCR 仪 LIS 接口实际输出样本,2021-07-12 生成,项目目录 /工作相关/qpcr 参考/(同目录还有 TL_PCR.log、TL_PCR.db、Setting.xml、新版全自动QPCR_CAN通讯协议20210723.xlsx 等仪器软件运行时文件)。

文件整体结构

三段式:

  1. 首行:运行标识(样本文件中的项目/运行名,如 2dna-20210712)
  2. 第二行:运行时间戳(2021/7/12 16:00:38)
  3. 第三行起:CSV 数据,第一行是表头,之后 96 行对应 96 孔板(A1–H12,行 A-H × 列 1-12,逐行排列)

表头字段

UID, Well, Sample, [Item, Ct, Quantity] × 6, Sample_UID, Curves1..Curves6
  • UID / Sample / Sample_UID:样本编号/项目绑定字段(本样本为空——测试数据未登记样本信息)
  • Well:孔位(A1..H12)
  • 6 组 Item/Ct/Quantity:对应 6 个荧光通道。本样本仅第 6 组(最后一个 Item 列)有通道名 Cy5,其余 5 组完全为空——即该仪器支持 6 通道(典型配置 FAM/SYBR/ROX/Cy5 等,本运行只用 Cy5)
  • Ct:阳性孔给出数值(12.449/12.684/12.395/12.621/12.449/12.738/12.723),阴性孔为 -
  • Quantity:定量值,本样本全部 -(未做定量分析,仅定性扩增)
  • Curves1..Curves6:6 通道各自的扩增曲线数据

曲线数据编码(关键格式点)

  • 每孔每通道一条曲线,由 40 个荧光强度点拼接
  • 点间分隔符是 \x1c(FS, 0x1C 文件分隔符控制字符),不是逗号——这是为了防止曲线内部数据与 CSV 的逗号分隔冲突
  • 曲线之间、以及曲线与行尾之间才用普通逗号分隔
  • 无扩增的孔:40 个点全为 0.0
  • 阳性孔曲线形态:基线附近波动(可为负值,如 -8.6,说明已做基线扣除/归一化)→ 指数上升(6.4→86→419→986)→ 平台期(~1400-1800 封顶,说明信号被量程截断或归一化到固定上限)
  • 阳性 7 孔集中在 C6/C7/D6/D7/E6/E7/F6/F7(中间两列),Ct 高度一致(12.4–12.7),典型的布局式验证/测试加样,不是真实临床样本

解析要点(给 LIS 对接方)

  1. 按行读,前两行是元信息,跳过或单独解析
  2. CSV split 后列数固定 = 3 + 18 + 1 + 6 = 28 列
  3. 解析 CurvesN 前必须先把 \x1c 替换为逗号或空格再 split
  4. Ct 为字符串 - 表示该孔该通道无扩增(判阴性),不是数值
  5. 同一台仪器换项目时 Item 通道名和组数会变,解析器应读表头动态定位组,不要硬编码列索引

与本知识库其他笔记的关系

  • 同目录的《新版全自动QPCR仪CAN通讯协议20210723》(已消化)描述下位机 CAN 层;本文件是上位机软件 LIS 输出层,两者构成 QPCR 整机软件的数据链两端
  • 曲线编码思路(控制字符做字段内分隔)与已归档的 HL7/ASTM 设备接口笔记中”转义/分隔符分层”的通用设计一致,可对照 Sysmex XE-5000血液分析仪数据通信规范

备注

  • 本文件是接口开发/联调阶段的输出样例(占位数据居多),知识价值主要在格式约定而非结果数据
  • 同目录其余文件(TL_PCR.log×5、TL_PCR.db、exe/dll 等)为仪器软件运行时产物,无独立知识含量,不再单独消化