数据质量控制常被简写成 QC。它需要确认样本没有错配,检查测量与基因分型质量,再按预先确定的规则排除信息不足的样本和位点。
下面使用 PLINK 2 生成质量报告并过滤基因型,样本编号检查则使用终端中的文本处理工具。data/genotypes 和 data/phenotype.tsv 分别表示基因型前缀与表型表,输出写到单独目录。
先核对编号,不要只核对行数
同一个 FID 与 IID 组合只能出现一次。下面的命令分别检查样本表和表型表中的重复编号;awk 按列取值,sort 排序,uniq -d 只显示重复行:
awk '{print $1, $2}' data/genotypes.fam | sort | uniq -dawk 'NR > 1 {print $1, $2}' data/phenotype.tsv | sort | uniq -dawk '{print $2}' data/genotypes.bim | sort | uniq -d第三条检查重复的位点编号。没有输出表示未发现重复编号。若出现重复,回查来源后再决定怎样处理。
再比较两个文件的样本集合:
awk '{print $1, $2}' data/genotypes.fam | LC_ALL=C sort > work/genotype_ids.txtawk 'NR > 1 {print $1, $2}' data/phenotype.tsv | LC_ALL=C sort > work/phenotype_ids.txtLC_ALL=C comm -3 work/genotype_ids.txt work/phenotype_ids.txtcomm -3 显示只出现在一边的编号。两份文件可以覆盖不同样本范围,但必须根据研究设计确定保留集合,并记录未匹配或表型缺失的样本怎样处理。
异常值需要回查测量记录表型异常可能来自测量单位不一致或录入错误。只有回查原始记录才能更正;不要因为一个值影响显著性就删除它。把更正依据和排除理由单独记录下来。
先生成报告,看看哪里缺得多
有些基因型没能可靠测出,会记为缺失。我们同时关心「某个样本有多少位置没测到」和「某个位点有多少样本没测到」。
./tools/plink2 \ --bfile data/genotypes \ --autosome \ --missing \ --freq \ --out results/qc_before| 输出 | 每行代表什么 | 先看什么 |
|---|---|---|
qc_before.smiss | 一个样本 | 缺失比例 F_MISS 是否集中在少数样本 |
qc_before.vmiss | 一个位点 | 哪些位置普遍测不出来 |
qc_before.afreq | 一个位点的等位基因频率 | 是否有非常少见或没有变化的位置 |
qc_before.log | 整次运行 | 读入数量、参数、警告 |
具体列名以表头为准,PLINK 输出格式文档可以用来逐列查询。缺失率如果与采样地区或实验批次有关,就需要追查原因;后面的过滤并不能解释这种系统偏差。
先过滤样本,再过滤位点
以下命令演示三种参数:样本缺失率上限为 5%,位点缺失率上限为 5%,次要等位基因频率下限为 1%。这些数值只用于说明参数写法,实际阈值应结合测量方法、样本规模和质量报告确定。
先生成样本过滤后的中间文件:
./tools/plink2 \ --bfile data/genotypes \ --autosome \ --mind 0.05 \ --make-bed \ --out work/sample_qc再在保留下来的样本中计算并应用位点条件:
./tools/plink2 \ --bfile work/sample_qc \ --autosome \ --geno 0.05 \ --maf 0.01 \ --make-bed \ --out work/variant_qc--mind 控制样本缺失率,--geno 控制位点缺失率。较少见等位基因的频率叫次要等位基因频率,参数写作 --maf。一个等位基因是「次要」还是「主要」,取决于当前样本中的频率,不是固定的生物学属性。
相同频率在不同样本规模下,对应的等位基因拷贝数不同。位点缺失也会影响可观察到的拷贝数。第五篇进一步使用 --mac 限制次要等位基因的拷贝总数,说明低频变异检验的稳定性问题。
将两轮过滤的样本数和位点数记入分析笔记,同时记录排除原因。过滤后的文件前缀为 work/variant_qc。PLINK 过滤说明解释了这些参数的边界。
为什么没有直接加上一条平衡过滤
在一个理想化的随机交配群体中,假设某个位点的两种等位基因频率分别为 p 和 q,那么三种基因型的预期比例满足:
这个参照叫哈代—温伯格平衡,常写作 HWE。观察到的基因型比例偏离它,可能提示分型错误,也可能反映近交或群体混合,选择和研究设计本身也可能影响这一比例。
处理自交材料、家系或特殊选育群体时,随机交配的参照可能并不合适。病例对照研究也需要考虑在哪一组样本中进行平衡检验。过滤依据应与研究设计一致。
需要诊断时,可以先生成报告:
./tools/plink2 \ --bfile work/variant_qc \ --autosome \ --hardy \ --out results/hwe这条命令只生成平衡检验报告,不自动排除位点。是否过滤、在哪个群体内检验,要在了解研究设计后决定。
其他质量指标还应检查污染和异常杂合度,结合实验记录排查样本重复与批次效应,并确认参考基因组版本。涉及性染色体时,需要另外核对性别信息及其编码。近亲与群体背景放到下一篇处理。
这一篇完成后
输出应包括原始质量报告、样本过滤中间文件与 work/variant_qc.bed/.bim/.fam,以及每一步的日志。你需要能解释每条排除规则,确认样本编号仍然对应,并知道剩余样本和位点的实际数量。
接下来要判断这些样本能否直接进入普通回归,以及怎样概括它们的群体背景。