第2讲:数据预处理与质控

从FASTQ到表达矩阵

本讲概述

学习目标: - 理解FASTQ格式和质量分数 - 掌握FastQC质控报告解读 - 理解比对原理和常用工具 - 掌握标准化方法的选择

重点难点: - 🔑 重点:质控指标解读、标准化原理 - ⚠️ 难点:TPM vs FPKM vs Size Factors 的区别与选择


1. FASTQ文件格式

1.1 格式结构

每个序列由4行组成:

@SEQ_ID                              ← 序列标识(以@开头)
GATCGGAAGAGCACACGTCTGAACTCCAGTCA    ← 碱基序列
+                                    ← 分隔行
IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII    ← 质量分数(ASCII编码)

1.2 Phred质量分数

Q = -10 × log10(P)    (P为错误概率)
Q值 准确率 评价
30 99.9% 优秀
20 99% 可接受
<20 <99%

要求:Q30 > 85%


2. 数据质控(FastQC)

2.1 关键模块

模块 说明
Per base sequence quality 每个碱基位置的质量分布
Per sequence GC content GC含量分布
Sequence Duplication Levels 重复序列水平
Adapter Content 接头含量

2.2 质控标准

指标 合格 不合格处理
Q30 > 85% 检查测序质量
GC含量 正态分布 检查污染
重复率 < 50% 检查PCR过度扩增
接头含量 < 5% 使用Trimmomatic去除

2.3 数据清洗(Trimmomatic)

trimmomatic PE \
  input_R1.fastq.gz input_R2.fastq.gz \
  output_R1_paired.fq.gz output_R1_unpaired.fq.gz \
  output_R2_paired.fq.gz output_R2_unpaired.fq.gz \
  ILLUMINACLIP:TruSeq3-PE.fa:2:30:10 \
  LEADING:3 TRAILING:3 \
  SLIDINGWINDOW:4:15 \
  MINLEN:36

3. Reads比对

3.1 比对挑战

RNA-seq reads跨越外显子-内含子边界

基因组:  exon1 ---intron--- exon2
          ↓                    ↓
Read:     ├────ATCGATCG───────┤  ← 剪接reads
              ↑ splice junction

3.2 剪接感知比对工具

工具 特点 适用
STAR 速度快,内存需求高 大规模分析
HISAT2 速度快,内存需求低 常规分析

3.3 STAR比对关键参数

STAR --genomeDir genome_index \
     --readFilesIn read1.fq.gz read2.fq.gz \
     --outFilterMultimapNmax 20 \  # 最大比对位点数
     --outSAMtype BAM SortedByCoordinate

3.4 比对质控指标

指标 可接受 良好 优秀
唯一比对率 >70% >85% >90%
rRNA比例 <10% <5% <2%

4. 基因表达定量

4.1 定量原理

比对reads:      ===
                    =============
                                   ========
                    ↓
计数: gene_A = 3 reads

4.2 featureCounts

featureCounts -a annotation.gtf \
              -o counts.txt \
              -T 8 \
              -p \                    # 双端模式
              -t exon -g gene_id \    # 按exon计数,gene_id汇总
              sample1.bam sample2.bam

5. 标准化方法 🔑⚠️

5.1 为什么需要标准化?

样本 总reads 基因A counts
A 10M 100
B 20M 200

问题:B的counts高是因为测序深度更深,非真实表达差异

5.2 标准化方法对比

方法 公式特点 适用场景
CPM/RPM reads/总reads×10⁶ 简单可视化
TPM 长度校正,和为10⁶ 样本内基因比较
FPKM/RPKM 长度+深度校正 基因间比较(不推荐)
Size Factor 中位数比值法 差异分析(DESeq2)
TMM 修剪均值M值 差异分析(edgeR)

5.3 TPM计算原理

Step 1: RPK = counts / (gene_length / 1000)
Step 2: scaling_factor = sum(RPK) / 10⁶
Step 3: TPM = RPK / scaling_factor
重要方法选择指南
目的 方法
差异分析 原始counts + DESeq2/edgeR内置标准化
样本内基因比较 TPM
可视化 log2-transformed CPM

5.4 DESeq2 Size Factor

中位数比值法

size factor_j = median_i (counts_ij / geometric_mean_i)

假设:大多数基因在不同样本间表达稳定

样本 总reads Size Factor 说明
A 10M 1.0 基准
B 20M 2.0 深度2倍,counts除以2

6. 完整流程总结

原始数据 (FASTQ)
      ↓
  FastQC质控
      ↓
  Trimmomatic清洗
      ↓
  STAR比对 (BAM)
      ↓
  featureCounts定量
      ↓
  表达矩阵 (counts)
      ↓
  标准化 (CPM/TPM/Size Factor)
      ↓
  差异分析 (DESeq2)

7. 质控检查清单

阶段 检查项 标准
原始数据 Q30 > 85%
原始数据 接头污染 < 5%
比对 唯一比对率 > 70%
比对 rRNA比例 < 10%
定量 基因检出数 > 10,000

思考题

  1. 为什么RNA-seq比对需要剪接感知工具?
  2. TPM和FPKM的主要区别是什么?
  3. 唯一比对率低可能是什么原因?
  4. 如何判断是否存在adapter污染?

参考文献

  1. Dobin A, et al. STAR: ultrafast universal RNA-seq aligner. Bioinformatics. 2013
  2. Liao Y, et al. featureCounts: an efficient general purpose program for assigning sequence reads to genomic features. Bioinformatics. 2014