R 中的 Bioconductor 入门
Paula Andrea Martinez, PhD.
Data Scientist
GRangesList-class 是用于存储一组 GRanges 的容器GRangesListas(mylist, "GRangesList")GRangesList(myGranges1, myGRanges2, ...)GRangesunlist(myGRangesList)methods(class = "GRangesList")# 含 983 个基因的 GRanges 对象 hg_chrXslidingWindows(hg_chrX, width = 20000, step = 10000)
# 仅展示列表中的两个元素
GRangesList object of length 983:
[[1]]
GRanges object with 2 ranges and 0 metadata columns:
seqnames ranges strand
<Rle> <IRanges> <Rle>
[1] chrX [276322, 296321] +
[2] chrX [286322, 303356] +
[[2]]
GRanges object with 3 ranges and 0 metadata columns:
seqnames ranges strand
[1] chrX [624344, 644343] +
[2] chrX [634344, 654343] +
[3] chrX [644344, 659411] +
...
GenomicFeatures 使用转录本数据库(TxDb)对象来存储元数据、管理基因组位置以及特征与其标识符的关系。
library(TxDb.Hsapiens.UCSC.hg38.knownGene)
(hg <- TxDb.Hsapiens.UCSC.hg38.knownGene)
Db type: TxDb
Supporting package: GenomicFeatures
Data source: UCSC
Genome: hg38
Organism: Homo sapiens
Taxonomy ID: 9606
Resource URL: http://genome.ucsc.edu/
Type of Gene ID: Entrez Gene ID
transcript_nrow: 197782
exon_nrow: 581036
cds_nrow: 293052
Db created by: GenomicFeatures package from Bioconductor
Creation time: 2016-09-29 13:02:09 +0000 (Thu, 29 Sep 2016)
library(TxDb.Hsapiens.UCSC.hg38.knownGene) hg <- TxDb.Hsapiens.UCSC.hg38.knownGene # hg 为 TxDb 对象seqlevels(hg) <- c("chrX") # 仅保留 chrX# 转录本 transcripts(hg, columns = c("tx_id", "tx_name"), filter = NULL) # 外显子 exons(hg, columns = c("tx_id", "exon_id"), filter = list(tx_id = "179161"))
columns 与 filter 可为 NULL 或以下任意项:
"gene_id", "tx_id", "tx_name", "tx_chrom", "tx_strand",
"exon_id", "exon_name", "exon_chrom", "exon_strand",
"cds_id", "cds_name", "cds_chrom", "cds_strand" and "exon_rank"

hg <- TxDb.Hsapiens.UCSC.hg38.knownGene seqlevels(hg) <- c("chrX") # 预筛选 X 染色体 exonsBytx <- exonsBy(hg, by = "tx") # 按转录本分组的外显子abcd1_179161 <- exonsBytx[["179161"]] # 转录本 IDwidth(abcd1_179161) # 每个外显子的长度,图中紫色区域
1299 181 143 169 95 146 146 85 126 1274
# countOverlaps 返回计数的整数向量
countOverlaps(query, subject)
# findOverlaps 返回 Hits 对象
findOverlaps(query, subject)
# subsetByOverlaps 返回 GRangesList 对象
subsetByOverlaps(query, subject)
R 中的 Bioconductor 入门