RSEM v1.3.3安装与使用--生信工具086

RSEM 完整使用文档

目录

  1. 软件简介
  2. 编译与安装
  3. 使用教程
  4. 多数据库参考基因组构建(RefSeq / Ensembl / GENCODE)
  5. 非常规物种参考库构建
  6. 表达定量计算
  7. 结果可视化
  8. 实操案例
  9. 测序数据模拟
  10. Trinity 转录本--基因映射文件生成
  11. 差异表达分析
  12. pRSEM 先验增强版 RSEM
  13. 作者、致谢与开源协议

1. 软件简介

RSEM 是一款基于 RNA-Seq 数据,精准定量 ** 基因与可变剪接异构体(isoform)** 表达量的工具包。

核心特性

  • 友好命令行交互,支持多线程 EM 算法并行计算
  • 兼容单端 / 双端测序、质量值、可变长度读段、RSPD 分布估算
  • 输出表达量后验均值与 95% 置信区间
  • 支持生成转录本坐标 / 基因组坐标的 BAM、Wiggle 文件
  • 结果可直接导入 UCSC Genome Browser、IGV 可视化
  • 专属脚本输出 PDF 格式转录本覆盖度图谱,支持唯一读段(黑色)/ 多重比对读段(红色)分层展示
  • 支持测序模型训练与可视化、内置 RNA-Seq 数据模拟器

2. 编译与安装

基础编译

复制代码
make

Cygwin 环境编译

复制代码
make cygwin=true

编译内置差异分析工具 EBSeq

复制代码
make ebseq

简易安装

方式 1:直接将 RSEM 目录写入环境变量 PATH方式 2:一键安装至系统目录

复制代码
make install
  • 默认安装路径:/usr/local/bin

  • 自定义安装目录:通过 DESTDIRprefix 指定

    make install DESTDIR=/home/my_name prefix=/software

本例安装路径:/home/my_name/software/bin

⚠️ 注意make install 不会安装 EBSeq 配套脚本rsem-generate-ngvector / rsem-run-ebseq / rsem-control-fdr),但差异分析矩阵工具 rsem-generate-data-matrix 会正常安装。

依赖环境

  • 必须:C++、Perl、R
  • GFF3 注释解析:额外需要 Python
  • 序列比对:提前安装 Bowtie / Bowtie2 / STAR / HISAT2

3. 使用教程

RSEM 分析分为两大核心步骤:

  1. rsem-prepare-reference:构建转录本参考库
  2. rsem-calculate-expression:比对 + 表达定量

3.1 参考序列准备

  • 输入 1:基因组序列 + GTF/GFF3 注释文件(推荐)
  • 输入 2:直接提供转录本序列

补充说明:UCSC Table Browser 导出的 GTF 缺少转录本 - 基因对应关系 ;若使用 UCSC Genes 注释,需额外下载 knownIsoforms.txt 补全关联信息。

查看帮助文档:

复制代码
rsem-prepare-reference --help

4. 主流数据库参考库构建

4.1 RefSeq 注释(人 / 鼠通用)

  1. 下载基因组 + GFF3 注释

    ftp://ftp.ncbi.nlm.nih.gov/genomes/refseq/vertebrate_mammalian/Homo_sapiens/all_assembly_versions/GCF_000001405.31_GRCh38.p5/GCF_000001405.31_GRCh38.p5_genomic.fna.gz
    ftp://ftp.ncbi.nlm.nih.gov/genomes/refseq/vertebrate_mammalian/Homo_sapiens/all_assembly_versions/GCF_000001405.31_GRCh38.p5/GCF_000001405.31_GRCh38.p5_genomic.gff.gz

  2. 提取一级组装序列(去除冗余补丁 / 单倍型)

    rsem-refseq-extract-primary-assembly GCF_000001405.31_GRCh38.p5_genomic.fna GCF_000001405.31_GRCh38.p5_genomic.primary_assembly.fna

  3. 构建 RSEM 参考 + Bowtie 索引

    rsem-prepare-reference --gff3 GCF_000001405.31_GRCh38.p5_genomic.gff
    --trusted-sources BestRefSeq,Curated\ Genomic
    --bowtie
    GCF_000001405.31_GRCh38.p5_genomic.primary_assembly.fna
    ref/human_refseq

  • --trusted-sources:仅解析高可信 RefSeq 注释来源
  • --gff3-RNA-patterns:可限定提取 mRNA、rRNA 等 RNA 类型
  • 建议定量时加 --append-names,优化基因名可读性

4.2 Ensembl 注释

  1. 下载数据

    ftp://ftp.ensembl.org/pub/release-83/fasta/homo_sapiens/dna/Homo_sapiens.GRCh38.dna.primary_assembly.fa.gz
    ftp://ftp.ensembl.org/pub/release-83/gtf/homo_sapiens/Homo_sapiens.GRCh38.83.gtf.gz

  2. 构建参考库

    rsem-prepare-reference --gtf Homo_sapiens.GRCh38.83.gtf
    --bowtie
    Homo_sapiens.GRCh38.dna.primary_assembly.fa
    ref/human_ensembl

若强行使用 GFF3 格式,需加参数:--gff3-RNA-patterns transcript


4.3 GENCODE 注释(人 / 鼠专用)

  1. 下载数据

    ftp://ftp.sanger.ac.uk/pub/gencode/Gencode_human/release_24/GRCh38.primary_assembly.genome.fa.gz
    ftp://ftp.sanger.ac.uk/pub/gencode/Gencode_human/release_24/gencode.v24.annotation.gtf.gz

  2. 构建参考库

    rsem-prepare-reference --gtf gencode.v24.annotation.gtf
    --bowtie
    GRCh38.primary_assembly.genome.fa
    ref/human_gencode


5. 非常规物种参考库构建

适用于病毒、小众物种:仅有基因注释、无独立转录本注释。添加 --gff3-genes-as-transcripts,将单个基因视作 1 条转录本。

复制代码
rsem-prepare-reference --gff3 virus.gff \
               --gff3-genes-as-transcripts \
               --bowtie \
               virus.genome.fa \
               ref/virus

6. 表达定量计算

查看帮助:

复制代码
rsem-calculate-expression --help

6.1 单端数据定量

单端数据需手动指定片段长度分布,保证定量准确度:

  • --fragment-length-mean:片段平均长度
  • --fragment-length-sd:片段长度标准差

6.2 更换比对软件

  • Bowtie2:--bowtie2
  • STAR:--star
  • HISAT2:--hisat2-hca

6.3 外部比对 BAM/ SAM 导入

  1. 先用 RSEM 生成的 reference_name.idx.fa 构建索引
  2. 比对输出 SAM/BAM/CRAM
  3. --alignments 参数直接输入比对文件

6.4 比对文件合法性校验

复制代码
rsem-sam-validator input.bam
convert-sam-for-rsem --help

⚠️ RSEM 不支持含插入缺失的空位比对


7. 结果可视化

7.1 BAM 文件输出

  • 默认:生成转录本坐标 BAM
  • --output-genome-bam:额外生成基因组坐标 BAM
  • 自带 SAMtools,自动排序 + 生成索引

7.2 转录本 BAM 转基因组 BAM

复制代码
rsem-tbam2gbam reference_name unsorted_transcript_bam_input genome_bam_output

7.3 生成 Wiggle 覆盖度文件

复制代码
rsem-bam2wig sorted_bam_input wig_output wiggle_name [--no-fractional-weight]

7.4 IGV 加载转录本坐标文件

  1. 导入自定义基因组:选用 reference_name.idx.fa
  2. 加载 wiggle/BAM 文件
  3. 大文件需用 igvtools 转换为 tdf 格式

7.5 转录本覆盖度 PDF 绘图

复制代码
rsem-plot-transcript-wiggles --help

7.6 测序模型可视化

输出片段分布、测序错误、比对统计等图表

复制代码
rsem-plot-model sample_name output_plot_file

8. 完整实操案例

以小鼠单端数据、限定片段长度、输出置信区间 + 基因组 BAM 为例:

复制代码
# 1. 构建参考
rsem-prepare-reference --gtf mm9.gtf --transcript-to-gene-map knownIsoforms.txt --bowtie --bowtie-path /sw/bowtie /data/mm9 /ref/mouse_0

# 2. 表达定量
rsem-calculate-expression --bowtie-path /sw/bowtie --phred64-quals --fragment-length-mean 150.0 --fragment-length-sd 35.0 -p 8 --output-genome-bam --calc-ci --ci-memory 1024 /data/mmliver.fq /ref/mouse_0 mmliver_single_quals

# 3. 生成wiggle文件
rsem-bam2wig mmliver_single_quals.sorted.bam mmliver_single_quals.sorted.wig mmliver_single_quals

# 4. 批量基因覆盖度绘图
rsem-plot-transcript-wiggles --gene-list --show-unique mmliver_single_quals gene_ids.txt output.pdf 

# 5. 模型统计绘图
rsem-plot-model mmliver_single_quals mmliver_single_quals.models.pdf

9. RNA-Seq 数据模拟

基于真实样本训练的模型,模拟测序读段,用于算法测试。

复制代码
rsem-simulate-reads reference_name estimated_model_file estimated_isoform_results theta0 N output_name [-q]

参数说明

  • theta0:背景噪音读段比例
  • N:模拟总读段数
  • 输出:模拟 FASTQ/FASTA + 模拟定量结果

模拟命令示例

复制代码
rsem-simulate-reads /ref/mouse_0 mmliver_single_quals.stat/mmliver_single_quals.model mmliver_single_quals.isoforms.results 0.2 50000000 simulated_reads

10. Trinity 组装转录本映射文件

无参转录组专用,快速生成 transcript-to-gene-map

复制代码
extract-transcript-to-gene-map-from-trinity trinity_fasta_file map_file

11. 差异表达分析

工具优势

edgeR / DESeq 不考虑多比对模糊性 ;RSEM 内置 EBSeq 经验贝叶斯模型,适配可变剪接、无参组装转录组差异分析。

前置编译

复制代码
make ebseq

核心流程

  1. 无参转录组先运行:rsem-generate-ngvector

  2. 批量表达矩阵提取

    rsem-generate-data-matrix sampleA.genes.results sampleB.genes.results > output_name.counts.matrix

  3. 批量差异检验 + FDR 校正

    rsem-run-ebseq --help
    rsem-control-fdr --help


12. pRSEM 先验增强版 RSEM

简介

pRSEM 整合 ChIP-seq 等表观数据,优化多重比对读段分配,提升定量准确性。

编译

复制代码
make pRSEM

依赖系统

  • Linux 平台
  • Perl ≥5.8.8 / Python ≥2.7.3 / R ≥3.3.1
  • 依赖 R 包:data.tableGenomicRangesShortRead、SPP、IDR

核心运行命令

复制代码
rsem-prepare-reference --gtf mm9.gtf \
                       --star \
                       --star-path /sw/STAR \
                       -p 8 \
                       --prep-pRSEM \
                       --bowtie-path /sw/bowtie \
                       --mappability-bigwig-file /data/mm9.bigWig \
                       /data/mm9 \
                       /ref/mouse_0

rsem-calculate-expression --star \
                          --star-path /sw/STAR \
                          --calc-pme \
                          --run-pRSEM \
                          --chipseq-target-read-files /data/mmliver_PolIIRep1.fq.gz,/data/mmliver_PolIIRep2.fq.gz \
                          --chipseq-control-read-files /data/mmliver_ChIPseqCtrl.fq.gz \
                          --bowtie-path /sw/bowtie \
                          -p 8 \
                          /data/mmliver.fq \
                          /ref/mouse_0 \
                          mmliver_single_quals
相关推荐
学术头条2 小时前
Springer Nature直播预告 | 无人系统集群协同与工程挑战
人工智能·科技·机器学习·ai·agi
m0_739312872 小时前
【自动驾驶】- MPC模型预测与控制算法(一)
人工智能·机器学习·自动驾驶
STLearner3 小时前
AI论文速读 | QuitoBench:支付宝高质量开源时间序列预测基准测试集
大数据·论文阅读·人工智能·深度学习·学习·机器学习·开源
数据牧羊人的成长笔记4 小时前
机器学习预备知识
人工智能·机器学习
人工智能培训4 小时前
大模型部署资源不足?轻量化部署解决方案
人工智能·机器学习·prompt·agent·智能体
Magic-Yuan5 小时前
算力的迷雾
人工智能·算法·机器学习
wayz115 小时前
Day 16:PCA主成分分析与降维
人工智能·算法·机器学习
wuxinyan1235 小时前
Java面试题53:一文深入了解RAG(检索增强生成)核心概念
java·人工智能·机器学习·面试·rag
Eloudy5 小时前
ubuntuclaude code 基于 kimi 2.6 入门
机器学习