TCGA數(shù)據(jù)下載與ID轉(zhuǎn)換

image

今天繼續(xù)我們的TCGA數(shù)據(jù)分析系列。

TCGA數(shù)據(jù)下載

TCGA數(shù)據(jù)下載的方式有很多,本次我們利用UCSC Xena數(shù)據(jù)庫下載數(shù)據(jù),網(wǎng)址是:https://xenabrowser.net/。該平臺(tái)內(nèi)置了一些公共數(shù)據(jù)集,比如來自TCGA, ICGC等大型癌癥研究項(xiàng)目的數(shù)據(jù),不僅可以對(duì)數(shù)據(jù)進(jìn)行分析,而且還提供了對(duì)應(yīng)文件的下載功能。

image

打開后界面是這樣的

image

點(diǎn)擊DATA SETS,里面有很多數(shù)據(jù)集,我們選擇TCGA肝癌數(shù)據(jù)

image

接著我們選擇HTSeq-Count

image

這里可以看到值log2(count+1),為什么加一呢,因?yàn)楹芏嗷虻谋磉_(dá)值是0,無法取log。

image

下載下來,解壓后打開是這個(gè)樣子

image

接下來我們進(jìn)行差異分析

首先加載R包

rm(list= ls())#一鍵清空#安裝并加載R包if(length(getOption("CRAN"))==0) options(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/")if(!require("rtracklayer")) BiocManager::install("rtracklayer")if(!require("tidyr")) BiocManager::install("tidyr")if(!require("dplyr")) BiocManager::install("dplyr")if(!require("DESeq2")) BiocManager::install("DESeq2")if(!require("limma")) BiocManager::install("limma")if(!require("edgeR")) BiocManager::install("edgeR")

讀取數(shù)據(jù)

#導(dǎo)入表達(dá)譜數(shù)據(jù)LIHCdata=read.table("TCGA-LIHC.htseq_counts.tsv",header=T,sep='\t')LIHCdata[1:4,1:4]
image

利用我們之前講到的方法去掉ensemble ID的點(diǎn)號(hào)R語言學(xué)習(xí)系列之separate {tidyr}

LIHCdata1<-separate(LIHCdata,Ensembl_ID,into= c("Ensembl_ID"),sep="\\.")LIHCdata1[1:4,1:4]

利用我們之前講到的方法去掉ensemble ID的點(diǎn)號(hào)R語言學(xué)習(xí)系列之separate {tidyr}

LIHCdata1<-separate(LIHCdata,Ensembl_ID,into= c("Ensembl_ID"),sep="\\.")LIHCdata1[1:4,1:4]
image

接下來我們需要對(duì)ID進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換的方法也有很多,有R包,在線數(shù)據(jù)庫。小工具等,這里我們通過下載最新版的GTF文件來進(jìn)行轉(zhuǎn)換。

首先,打開ensembl網(wǎng)址:http://asia.ensembl.org/index.html

image

點(diǎn)擊Download

image

再點(diǎn)擊Download database

image

再點(diǎn)擊human的GTF文件

image

下載Homo_sapiens.GRCh38.99.chr.gtf.gz文件

然后放到我們R語言的工作目錄內(nèi),打開文件

gtf <- rtracklayer::import('Homo_sapiens.GRCh38.99.chr.gtf.gz')#轉(zhuǎn)換為數(shù)據(jù)框gtf <-as.data.frame(gtf)

查看文件,保存文件為Rdata,將來方便我們直接打開

dim(gtf)save(gtf,file ="Homo_sapiens.GRCh38.99基因組注釋文件.Rda")
image
image

可見文件有290萬行,27列,由于GTF文件中,基因ID的列名是gene_id,所以我們把LIHCdata1中的基因列名改成一樣的,方便后續(xù)合并

colnames(LIHCdata1)[1]<-'gene_id'

通過瀏覽文件看到我們需要的主要信息在

1 type,這一列我們需要選擇gene

2 gene_biotype,這一列我們需要選擇protein_coding,當(dāng)然你也可以選擇其他的種類,比如miRNA,長鏈非編碼等。

所以我們首先把蛋白編碼的基因的行都篩選出來

a=dplyr::filter(gtf,type=="gene",gene_biotype=="protein_coding")dim(a)
image

這個(gè)時(shí)候a文件只有19939行了,列下來我們只選擇gene_name,gene_id和gene_biotype這三列,其他都不要了

b=dplyr::select(a,c(gene_name,gene_id,gene_biotype))b[1:4,]
image

接下來用LIHCdata1和b文件中共有的gene_id列還合并文件

c=dplyr::inner_join(b,LIHCdata1,by ="gene_id")c[1:5,1:5]
image

再去掉第2,3列,基因名再去重

d=select(c,-gene_id,-gene_biotype)mRNAdata=distinct(d,gene_name,.keep_all = T)
image

把行名由數(shù)字換成基因

rownames(mRNAdata)<-mRNAdata[,1]mRNAdata<-mRNAdata[,-1]
image

我們下載的數(shù)據(jù)取過了log2(count+1),這里我們?cè)俜祷豤ount

mRNAdata<-2^mRNAdata -1
image

保存文件,大功告成!

write.csv(mRNAdata,"mRNAdata.csv",quote = F,row.names = T)save(mRNAdata,file ="mRNAdata.Rda")

好了,今天先講到這,下回我們來進(jìn)行后續(xù)的差異分析。

需要今天下載的兩個(gè)文件的話,公眾號(hào)回復(fù)“大功告成”可獲取鏈接。

另外,最近收集了一些很好的資源,想分享給大家,順便能漲一些粉,主要有

1. 19年中標(biāo)的各門類國自然題目匯總,以及17年的國自然匯總,部分含摘要!

image
image

2. R語言學(xué)習(xí)書籍

R語言實(shí)戰(zhàn)(中文完整版)

image

R數(shù)據(jù)科學(xué)(中文完整版)

image

ggplot2:****數(shù)據(jù)分析與圖形藝術(shù)

image

30分鐘學(xué)會(huì)ggplot2

image

3. TCGA數(shù)據(jù)整理

前期從https://xenabrowser.net/datapages/ (UCSC Xena)數(shù)據(jù)庫下載的TCGA數(shù)據(jù),傳到了百度云上備份。

image
image
image

感興趣的話,轉(zhuǎn)發(fā)朋友圈或者100人以上的微信群,截圖發(fā)到公眾號(hào),即可獲取全部資源的百度云鏈接,鏈接7天有效,希望大家趕緊下載。你們的支持是我前進(jìn)的動(dòng)力,感謝。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容