TxDb 格式文件

介绍

TxDb (Transcript Database) 是 Bioconductor 提供的一种 用于存储转录组注释信息 的 R 对象,主要用于 基因结构解析、基因注释提取、外显子/CDS/UTR 分析等。它通常存储来自 GTF/GFF3 文件的转录本信息,包括:

  • 基因(Gene)

  • 转录本(Transcript)

  • 外显子(Exon)

  • CDS(Coding Sequence,编码区)

  • 5'UTR 和 3'UTR

  • 内含子(Intron)

  • 转录起始位点(TSS, Transcription Start Site)

  • 转录终止位点(TES, Transcription End Site)


📌 TxDb 文件的构建

🔹 1. 通过 makeTxDbFromGFF() 从 GTF/GFF3 创建 TxDb

如果你有一个 GTF/GFF3 文件(例如 hg38.annotation.gtf),可以用 makeTxDbFromGFF() 创建 TxDb

library(GenomicFeatures)
txdb <- makeTxDbFromGFF(file = "hg38.annotation.gtf", format = "gtf", organism = "Homo sapiens")
# 保存 TxDb 对象saveDb(txdb, file = "hg38.sqlite")

  • makeTxDbFromGFF() 读取 GTF/GFF3 文件,并解析基因结构信息。

  • saveDb(txdb, file = "hg38.sqlite") 将 TxDb 保存为 SQLite 格式,便于后续加载。


🔹 2. 直接加载 Bioconductor 提供的 TxDb

Bioconductor 提供了一些 预计算好的 TxDb 数据库,可以直接使用:

# 安装并加载 TxDbBiocManager::install("TxDb.Hsapiens.UCSC.hg38.knownGene")
# 载入 TxDblibrary(TxDb.Hsapiens.UCSC.hg38.knownGene)txdb <- TxDb.Hsapiens.UCSC.hg38.knownGene

  • 这种方式适合人类(hg38, hg19)或小鼠(mm10)等常见物种

  • 如果需要自定义注释,建议使用 makeTxDbFromGFF()


📌 TxDb 文件结构

🔹 1. TxDb 的基本信息

可以用 txdb 查询 TxDb 结构:

R语言:

txdb


 

输出示例:

 

shell语言:

TxDb object:# Db type: TranscriptDb# Supporting package: GenomicFeatures# Data source: hg38.annotation.gtf# Genome: hg38# Organism: Homo sapiens# Transcript count: 182,481# Exon count: 1,021,375# CDS count: 410,852

  • 数据来源hg38.annotation.gtf

  • 物种Homo sapiens

  • 转录本数182,481

  • 外显子数1,021,375

  • CDS 数410,852


🔹 2. TxDb 存储的主要数据

可以使用 columns(txdb) 查看 TxDb 数据库的可用列:

 
columns(txdb)


 

常见输出:

 

csharp
[1] "GENEID"   "TXID"   "TXNAME"   "EXONID"   "EXONRANK"[6] "CDSID"   "CDSSTART"   "CDSEND"   "EXONSTART" "EXONEND"[11] "TXSTART"  "TXEND"   "TXSTRAND" "TXCHROM"


 

字段含义
GENEID

基因 ID(Ensembl/NCBI/RefSeq ID)

TXID

转录本 ID

TXNAME

转录本名称

EXONID

外显子 ID

EXONRANK

外显子在转录本中的顺序

CDSID

CDS ID

CDSSTART

CDS 起始位置

CDSEND

CDS 终止位置

EXONSTART

外显子起始位置

EXONEND

外显子终止位置

TXSTART

转录本起始位置

TXEND

转录本终止位置

TXSTRAND

转录本所在 DNA 链(+/-

TXCHROM

染色体号


📌 TxDb 常见操作

🔹 1. 获取基因、转录本、外显子、CDS 信息

 

# 获取基因信息genes(txdb)
# 获取转录本信息transcripts(txdb)
# 获取外显子信息exons(txdb)
# 获取 CDS(编码区)信息cds(txdb)
# 获取 5' UTR 和 3' UTR 信息fiveUTRsByTranscript(txdb)threeUTRsByTranscript(txdb)


🔹 2. 获取特定基因的转录本

# 查找基因 ID 为 "ENSG00000141510"(TP53)的所有转录本tx_by_gene <- transcriptsBy(txdb, by = "gene")tx_by_gene["ENSG00000141510"]


 


🔹 3. 获取特定染色体上的所有转录本

# 获取 chr1 染色体上的所有转录本tx_chr1 <- transcripts(txdb, columns = c("TXID", "TXNAME", "TXSTART", "TXEND"), filter = list(tx_chrom = "chr1"))head(tx_chr1)


 


🔹 4. 计算基因长度

 
library(GenomicFeatures)gene_length <- sum(width(reduce(genes(txdb))))


🔹 5. 转换 TxDb 为 GRanges

 
library(GenomicRanges)
# 转录本转换为 GRangesgr_transcripts <- transcripts(txdb)
# 外显子转换为 GRangesgr_exons <- exons(txdb)


 


📌 TxDb 在 Ribo-seq / RNA-seq 分析中的作用

在 Ribo-seq / RNA-seq 分析中,TxDb 通常用于:

  1. 提取 CDS 位置,用于计算翻译效率(TE, Translation Efficiency)。

  2. 定义 UTR 区域,用于研究 5' UTR 和 3' UTR 的翻译调控。

  3. 筛选特定基因的转录本,用于可变剪切(alternative splicing)分析。

  4. 生成元基因(metagene)分析所需的坐标,帮助 P-site 计算。


📌 结论

✅ TxDb 是存储基因注释的 R 格式文件,可以从 GTF/GFF3 文件创建。
✅ TxDb 主要包含基因、转录本、CDS、UTR、外显子等结构信息
✅ 它广泛应用于 RNA-seq、Ribo-seq 和基因功能注释
✅ 可以通过 GenomicFeatures 包进行解析和可视化

生信大白记第59记,就到这里,关注我!

下一记,持续更新学习生物信息学的内容!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值