生物信息学基础
从零基础搭建生信分析平台到各类工具使用
Bioinformatics - from basic platform setup to various bioinformatics tools
概述
生物信息学(Bioinformatics)是利用计算机、数学和统计学方法对生物数据进行分析的交叉学科。本专题将从零基础平台搭建开始,系统介绍生信分析所需的各类工具和流程。
内容涵盖: - 基础平台搭建 - Linux 环境、服务器配置、容器化部署 - 环境管理 - mamba/conda 包管理、软件源配置 - 基础工具 - 序列处理、格式转换、数据质控 - 核心分析 - 比对、定量、变异检测、差异分析 - 高级应用 - 流程自动化、云平台、可视化
平台搭建
操作系统环境
生信分析主要基于 Linux 系统,以下内容为入门基础:
| 主题 | 说明 |
|---|---|
| Ubuntu 系统安装 | WSL2/虚拟机/实体机安装 Ubuntu |
| Ubuntu 系统配置 | 基础配置、软件安装、环境优化 |
| Tmux 使用 | 终端复用,长任务管理 |
| Git 使用 | 版本控制与代码管理 |
服务器与远程访问
- SSH 远程连接与密钥配置
- scp/rsync 文件传输
- 作业调度系统(Slurm/PBS)
容器化部署(待补充)
- Docker 基础
- Singularity 在 HPC 上的使用
环境管理
Mamba/Conda
- mamba 安装与使用 - 替代 conda 的更快包管理器
- bioconda 软件源配置
- 环境创建与导出
- 环境迁移与复现
其他包管理
- pip / uv (Python 包管理)
- CRAN / Bioconductor (R 包管理)
基础工具
序列文件格式
| 格式 | 用途 | 说明 |
|---|---|---|
| FASTA | 序列存储 | 核酸/蛋白序列 |
| FASTQ | 原始测序数据 | 序列 + 质量值 |
| SAM/BAM | 比对结果 | 文本/二进制格式 |
| VCF | 变异位点 | SNP/InDel |
| GTF/GFF | 基因注释 | 基因结构信息 |
| BED | 基因组区间 | 峰区、覆盖度等 |
常用命令行工具
序列处理: - samtools - BAM 文件处理 - bedtools - 基因组区间操作 - bcftools - VCF 文件处理 - seqkit - 快速序列操作
数据质控: - FastQC - 原始数据质量评估 - MultiQC - 多样本质控报告汇总 - fastp - 数据过滤与去接头
格式转换: - Picard - BAM 排序、去重 - GATK - 变异检测流程
核心分析流程
序列比对
FastQ → [比对软件] → SAM/BAM → [排序/去重] → 最终 BAM
| 工具 | 适用场景 | 特点 |
|---|---|---|
| BWA-MEM | DNA-Seq | 通用、准确 |
| Bowtie2 | ChIP-Seq/小基因组 | 快速、轻量 |
| STAR | RNA-Seq | 剪接感知 |
| HISAT2 | RNA-Seq | 内存友好 |
| Minimap2 | 三代测序 | 长读长比对 |
表达定量
基于比对: - featureCounts - HTSeq-count
无需比对(轻量级): - Salmon - Kallisto
变异检测
DNA-Seq 流程:
BAM → [BQSR] → [HaplotypeCaller] → gVCF → [联合基因型] → VCF
- GATK 最佳实践流程
- FreeBayes
- DeepVariant (深度学习)
差异表达分析
- DESeq2 - 负二项分布模型,适合小样本
- edgeR - 精确检验,计算效率高
- limma-voom - 适合大样本量
功能富集分析
- clusterProfiler - GO/KEGG 富集
- GSEA - 基因集富集分析
- Metascape - 在线富集分析平台
单细胞分析
单细胞测序数据分析流程:
FastQ → CellRanger → count matrix → Seurat/Scanpy → 分析
| 工具 | 说明 |
|---|---|
| CellRanger | 10x Genomics 官方流程 |
| Seurat | R 语言单细胞分析 |
| SingleCellExperiment | Bioconductor 单细胞框架 |
| CellChat | 细胞间通讯分析 |
| miloR | 差异丰度分析 |
流程自动化
工作流引擎
- Snakemake - Python 风格,易上手
- Nextflow - Groovy 语法,适合大型流程
- CWL/WDL - 标准化工作流语言
最佳实践
- 版本控制(Git)
- 环境锁定(conda env export)
- 日志记录
- 中间文件管理
相关资源
官方文档
学习平台
- Coursera - Bioinformatics
- Rosalind - 生信编程练习