GTEx項(xiàng)目對(duì)來自人體多個(gè)組合和器官的樣本,同時(shí)進(jìn)行了轉(zhuǎn)錄組測序和基因分型分析休涤,構(gòu)建了一個(gè)組織特異性的基因表達(dá)和調(diào)控的數(shù)據(jù)庫:Genotype-Tissue Expression (GTEx)
1. 背景知識(shí)
一期
2015年句葵,GTEx發(fā)布了第一個(gè)階段性成果风皿,一次性在Science雜志上發(fā)表三篇研究成果盏浇,該成果還被選為封面文章。GTEx的研究從175名死者身上采集到了1641個(gè)尸檢樣本蚀瘸,這些樣本來自54個(gè)不同的身體部位狡蝶,對(duì)幾乎所有轉(zhuǎn)錄基因的基因表達(dá)模式進(jìn)行了觀察,從而夠確定基因組中影響基因表達(dá)的特定區(qū)域贮勃。另外兩篇文章之一從人所有組織中的基因表達(dá)譜進(jìn)行了描述贪惹,證明了組織特異性的某些基因往往決定了組織特異性基因的表達(dá)調(diào)控;另一篇解釋了截短的蛋白變異體如何影響組織中的基因表達(dá)寂嘉。
- The Genotype-Tissue Expression (GTEx) pilot analysis: Multitissue gene regulation in humans
- The human transcriptome across tissues and individuals
- Effect of predicted protein-truncating genetic variants on the human transcriptome
二期
在2017年奏瞬,一次性在nature發(fā)表4篇研究成果,GTEx研究聯(lián)盟的研究收集并研究了來自449名生前健康的人類捐獻(xiàn)者的7000多份尸檢樣本泉孩,涵蓋44個(gè)組織(42種不同的組織類型)硼端,包括31個(gè)實(shí)體器官組織、10個(gè)腦分區(qū)寓搬、全血珍昨、兩個(gè)來自捐獻(xiàn)者血液和皮膚的細(xì)胞系,作者利用這些樣本研究基因表達(dá)在不同組織和個(gè)體中有何差異句喷。題為“Landscape of X chromosome inactivation across human tissues”和“Dynamic landscape and regulation of RNA editing in mammals”的論文镣典,采用GTEx數(shù)據(jù)探討了與基因表達(dá)相關(guān)聯(lián)的基因變異如何能夠調(diào)節(jié)RNA編輯和X染色體失活現(xiàn)象。
對(duì)于所有的樣本唾琼,主要進(jìn)行了以下三種分析
- RNA seq
通過illumina Truseq試劑盒構(gòu)建polyA+文庫骆撇,采用Hiseq 2000/2500進(jìn)行測序,對(duì)于下機(jī)數(shù)據(jù)父叙,采用STAR進(jìn)行比對(duì),參照選擇的是gencode V19版本的gtf文件肴裙,進(jìn)行了以下3個(gè)level的定量
gene-level:采用RNAseQC軟件趾唱,對(duì)基因的raw count和TPM兩種方式進(jìn)行定量
exon-level:對(duì)exon的raw count進(jìn)行定量
transcript-level:采用RSEM進(jìn)行轉(zhuǎn)錄本水平的定量
- genotype
通過WGS對(duì)樣本進(jìn)行分型, 采用的是GATK germline variants calling的流程,步驟如下
bwa-mem alignment
picard markduplicate
BQSR
indel realign
haplotypeCaller
- eQTL
通過FastQTL軟件進(jìn)行cis-eQTL分析蜻懦,將基因型和基因表達(dá)量進(jìn)行關(guān)聯(lián)甜癞。
通過官網(wǎng)可以查看基因表達(dá)量和eQTL分析的結(jié)果,以TP53為例宛乃,每個(gè)基因給出了以下3個(gè)層級(jí)的表達(dá)量
Isoform Expression
Exon Expression
Junction Expression
2. 數(shù)據(jù)庫內(nèi)容介紹和數(shù)據(jù)下載
通常是直接去 https://gtexportal.org/ 找到可以下載(在)的數(shù)據(jù)集悠咱,如下:
其中征炼,對(duì)我們來說最重要的就是 表達(dá)矩陣析既, 可以下載圖中 gene read counts 這個(gè)496M的文件,表達(dá)矩陣?yán)锩娴臉颖綢D肯定是數(shù)據(jù)庫組織者自定義的谆奥,所以我們還需要找到樣本ID的注釋信息眼坏。
3. 數(shù)據(jù)分析
3.1 讀入矩陣
GTEx<-read.table("GTEx_Analysis_2017-06-05_v8_RNASeQCv1.1.9_gene_reads.gct", skip = 2, header = TRUE, sep = "\t")
save(GTEx,file = 'GTEx.Rdata')
GTEx[1:4,1:4] ##行是基因 列是樣本
# Name Description GTEX.1117F.0226.SM.5GZZ7 GTEX.1117F.0426.SM.5EGHI
# 1 ENSG00000223972.5 DDX11L1 0 0
# 2 ENSG00000227232.5 WASH7P 187 109
# 3 ENSG00000278267.1 MIR6859-1 0 0
# 4 ENSG00000243485.5 MIR1302-2HG 1 0
colnames(GTEx)
3.2 讀入注釋信息
SAMPLE:樣本名,和GTEx矩陣的列對(duì)應(yīng)
SMTS: Tissue Type, area from which the tissue sample was taken.
SMTSD: Tissue Type, more specific detail of tissue type
a=read.table('GTEx_Analysis_v8_Annotations_SampleAttributesDS.txt',
header = T,sep = '\t',quote = '')
table(a$SMTS)
3.3 提取感興趣的組織進(jìn)行分析
以心臟為例
heart_gtex=GTEx[,gsub('[.]','-',colnames(GTEx)) %in% a[a$SMTS=='Heart',1]]
rownames(heart_gtex)=GTEx[,1]
dat=heart_gtex
就是把屬于Heart這個(gè)組織的樣本名挑選出來酸些,在上面的表達(dá)矩陣?yán)锩嫒∽蛹纯伞?/p>
值得注意的是這個(gè)時(shí)候的表達(dá)矩陣基因名不是symbol宰译,需要進(jìn)行ID轉(zhuǎn)換
ids=GTEx[,1:2]
head(ids)
colnames(ids)=c('probe_id','symbol')
dat=dat[ids$probe_id,]
dat[1:4,1:4]
ids$median=apply(dat,1,median)
ids=ids[order(ids$symbol,ids$median,decreasing = T),]
ids=ids[!duplicated(ids$symbol),]
dat=dat[ids$probe_id,]
rownames(dat)=ids$symbol
dat[1:4,1:4]
heart_gtex=dat
save(heart_gtex,file = 'heart_gtex_counts.Rdata')
這樣就得到了正常的心臟組織樣本表達(dá)矩陣檐蚜,可以進(jìn)行的分析。
4. 不同組織的基因表達(dá)分析
比較心沿侈、肺闯第、血中S100A8的表達(dá)
organ_gtex=GTEx[,gsub('[.]','-',colnames(GTEx)) %in% a[a$SMTS %in% c('Heart','Blood','Lung'),1]]
rownames(organ_gtex)=GTEx[,1]
dat=organ_gtex
ids=GTEx[,1:2]
head(ids)
colnames(ids)=c('probe_id','symbol')
dat=dat[ids$probe_id,]
dat[1:4,1:4]
ids$median=apply(dat,1,median)
ids=ids[order(ids$symbol,ids$median,decreasing = T),]
ids=ids[!duplicated(ids$symbol),]
dat=dat[ids$probe_id,]
rownames(dat)=ids$symbol
dat[1:4,1:4]
organ_gtex=dat
#save(organ_gtex,file = 'organ_gtex_counts.Rdata')
b=a[a$SMTS %in% c('Heart','Blood','Bone Marrow','Lung'),c(1,6)]
c <- b[b$SAMPID %in% gsub('[.]','-',colnames(dat)),]
colnames(dat) <- gsub('[.]','-',colnames(dat))
dat <- t(dat)
dat <- as.data.frame(dat)
dat$group <- c$SMTS
library(dplyr)
d <- group_by(dat,group)
summarise(d,median=median(S100A8),n=n())
## A tibble: 3 x 3
# group median n
# <chr> <dbl> <int>
# 1 Blood 52504 929
# 2 Heart 730 861
# 3 Lung 10942. 578
參考