零基础入门转录组上游分析——第三章(质控及数据过滤)
零基础入门转录组上游分析——第三章(质控及数据过滤)
转录组数据分析是生物信息学领域的重要组成部分,其中数据质控和过滤是确保后续分析准确性的关键步骤。本文将详细介绍如何使用fastqc、multiqc和trim-galore等工具对原始测序数据进行质控和过滤,帮助零基础的学习者掌握这一重要技能。
实验环境与准备
本教程使用的虚拟机环境为VMware Workstation 16.0.0,操作系统为Ubuntu 20.04.3 64位。实验数据来源于C57BL/6J小鼠,分为药物处理组和对照组,每组6只。所需软件包括vim、fastqc、multiqc和trim-galore。
1. 查看原始数据
首先需要在Linux桌面上创建一个名为00_raw_data的文件夹,并将所有原始数据拷贝到该文件夹中。通过终端指令完成以下操作:
切换到原始数据文件夹:
cd Desktop/00_raw_data/查看当前文件夹下所有文件的详细信息:
ls -lh准备样本信息文件:
ls -lh > sample_info使用vim编辑器打开并处理
sample_info文件,删除第一行和最后一行,保留9列信息。
2. 质控
使用fastqc工具对样本进行质量分析:
对单个样本进行质控:
fastqc A2_1.fq.gz运行结束后会生成html和zip文件,重点关注html文件以查看质控结果。
3. 质控进阶
为了处理多个样本,可以编写脚本让系统自动运行:
提取样本信息表中的样本名称:
awk '{print "fastqc "$9}' sample_info > fastqc_run.sh查看生成的脚本:
cat fastqc_run.sh执行脚本:
bash fastqc_run.sh
4. 质控结果合并
使用multiqc工具合并所有质控结果:
multiqc .
运行结束后会生成multiqc_data文件夹和multiqc_report.html文件,重点关注multiqc_report.html文件。
5. multiqc结果解读
(1)General Statistics
显示所有样本的基本统计信息,包括重复reads比例、GC含量和总测序量等。
(2)Sequence Counts
显示每个样本的重复reads比例。
(3)Sequence Quality Histograms
显示每个read各位置碱基的平均测序质量,颜色区间表示质量等级。
(4)Per Sequence Quality Scores
显示具有平均质量分数的reads的数量分布。
(5)Per Base Sequence Content
显示每个样本各位置碱基ATCG的比例分布。
(6)Per Sequence GC Content
显示reads的平均GC含量分布。
(7)Per Base N Content
显示每条reads各位置N碱基含量比例。
(8)Sequence Length Distribution
显示测序长度和read counts的对应关系。
(9)Sequence Duplication Levels
显示序列的相对重复水平分布。
(10)Overrepresented sequences和Adapter Content
显示文库中过表达序列的比例和接头含量。
6. 数据过滤
使用trim-galore工具进行数据过滤:
创建输出文件夹:
mkdir 02_clean_data切换到原始数据文件夹:
cd 00_raw_data运行质量过滤:
trim_galore --quality 25 --stringency 1 --length 50 --paired --output_dir /home/daizhuer/Desktop/02_clean_data/ A2_1.fq.gz A2_2.fq.gz
过滤结果会保存在02_clean_data文件夹中,包括过滤后的文件和质量过滤的结果报告。
质量过滤结果解读
- 质量分数阈值:设置为25,表示质量小于25的reads会被去除。
- 接头重叠碱基数:设置为1,表示对接头中重叠碱基数检查非常严格。
- 输出reads长度阈值:设置为50,表示长度小于50的reads会被去除。
- 完成质量过滤所消耗的时间。
- 接头重叠碱基数大于1的reads比例。
- 质量小于25的reads比例。
如果样本量较大,可以参照质控进阶部分,通过awk指令编写脚本自动运行剩余样本。
补充说明
质量过滤是否必要取决于质控分析结果。如果发现样本质量不佳,可以尝试进行过滤。过滤参数可以根据具体需求进行调整。
