人工区间贯通测序指标 - spiralkernelle/bioinfo-wiki GitHub Wiki
人工区间贯通测序指标
更新:2026-10-13;状态:可用;验证范围:2026-10-13实际运行纯Python区间/质量/N50计算;无FASTQ、比对、去重或湿实验运行。
用已知读段区间和分子身份计算覆盖,解释双端重叠、重复和质量汇总。
实际计算范围
只生成1000 bp范围的人工位置,没有真实FASTQ、比对、去重或PCR。分子身份是模拟真值,不是从真实数据识别的结果。
固定种子20261013,40个片段各120 bp,两端各75 bp;前10个各增加1份拷贝,共50对、100条读段,重叠30 bp。
运行
项目根目录运行Python 3.9+,不需第三方包:
python3 examples/sequencing_metrics_demo.py
输出在examples/output/sequencing/,重复运行覆盖同名文件。simulation-truth.tsv记录片段来源,coverage.tsv记录逐位置四种口径,summary.json保存参数和校验值。源代码。
| 口径 | 累计贡献 | 平均深度 |
|---|---|---|
| 所有read逐条相加 | 7500 | 7.5 |
| 每对合并重叠,保留额外拷贝 | 6000 | 6.0 |
| 原始40个分子,仍逐条加两端 | 6000 | 6.0 |
| 原始分子去额外拷贝,再合并重叠 | 4800 | 4.8 |
中间两行均值相同,含义和分布不同。坐标重复不能代替真实分子去重,特别是扩增子。本例仅使用真值解释数量。
四种口径至少1次覆盖均为0.962,仍有38位置未覆盖;至少5次覆盖分别0.684、0.623、0.650和0.549。均值不能代替广度。

配图另需Matplotlib,运行python3 examples/plot_sequencing_metrics.py,输出到examples/output/sequencing/figures/,重复运行覆盖同名图。
图中Unique是模拟已知原始分子,不是实际去重软件结果;两个均值6.0的口径也有不同≥5覆盖比例。
质量与连续性
Q20与Q40算术平均30,先平均错误概率后转换得22.9671。Q30模型错误概率0.001,不是每1000碱基必错1个。
500、100、100、100、100、100总长1000,N50=500、中位数100。参考1200时NG50=100;参考3000时达不到一半,NG50未定义。
判读与复核
测序深度覆盖度与质量分数解释真实数据口径;单端双端读长与插入片段解释重叠;N50组装连续性与完整性解释连续性。
公开汇总保留实测结果,教学代码不替代测序软件或实验验证。