0 實(shí)驗(yàn)設(shè)計(jì)
思路:(1)得到脅迫處理誘導(dǎo)的基因和突變體野生型間的差異基因作為候選基因集(2)兩兩計(jì)算候選基因的皮爾遜相關(guān)系數(shù)(3)使用igrah計(jì)算各個(gè)基因的中心度。從RNA-seq開始構(gòu)建共表達(dá)網(wǎng)絡(luò)。1 使用軟件FastQC進(jìn)行測(cè)序質(zhì)量評(píng)估 (NGS基礎(chǔ) - FASTQ格式解釋和質(zhì)量評(píng)估)$ ls *.fastq.gz | xargs -n1 -P2 fastqc $1備注: -n1 表示一個(gè)參數(shù)傳遞給fastqc,-P表示線程數(shù) 2 使用trimmomatic質(zhì)量清理script.trimmo.sh,對(duì)測(cè)序數(shù)據(jù)進(jìn)行質(zhì)量控制 $ echo 'nohup java -jar trimmomatic-0.36.jar SE $1 $1.trim.fil.gz LEADING:20 TRAILING:20 AVGQUAL:25 SLIDINGWINDOW:10:30 MINLEN:36 > $1.trim.nohup' > script.trimmo.sh$ ls *.fastq.gz | xargs -n1 -P2 sh script.trimmo.sh 3 使用hisat2比對(duì) (轉(zhuǎn)錄組分析工具哪家強(qiáng)?)使用比對(duì)軟件hisat2建立索引和比對(duì) 4使用htseq-count,獲得每個(gè)基因的counts數(shù)目備注:PE數(shù)據(jù)必須先根據(jù)序列的名字或者位置進(jìn)行排序,本次項(xiàng)目是單端,所以隨意。 5 使用DESeq2 計(jì)算差異基因 (DESeq2差異基因分析和批次效應(yīng)移除)將0、6、12 h的count的table依次導(dǎo)入,分別計(jì)算這3個(gè)時(shí)間點(diǎn)的差異基因。 過(guò)濾掉低表達(dá)的基因(所有樣本的和 >1),log2FC >1 with adjusted p-values<0.01 篩選差異基因 >library(DESeq2)>table=read.table('0_H_count.txt',header=F,sep='\t',row.names =1) > colname(table)=c('0h_c_rep1','0h_c_rep2','0h_c_rep3','0h_t_rep1','0h_t_rep2','0h_t_rep3')>countData <- countData[rowSums(countData) > 1, ] # 去除掉低表達(dá)的基因 >condition <- c('c','c','c','t','t','t')>coldata <- data.frame(row.names=colnames(countData), condition) >dds <- DESeqDataSetFromMatrix(countData = countData, colData = group, design = ~condition )>results <- results(DESeq(dds)) >res <- na.exclude(as.data.frame(results))> filter <- res[(abs(res$log2FoldChange)>1 & res$padj<0.01),] > write.table(filter,'DGE_0h.txt', quote=F,sep='\t', col. names = NA)6 使用EBSeq 對(duì)count數(shù)目進(jìn)行標(biāo)準(zhǔn)化(生信寶典注:標(biāo)準(zhǔn)化后的數(shù)據(jù)可以也直接從DESeq2獲取) 獲得每個(gè)基因的counts數(shù)目之后,就可以計(jì)算兩兩基因的皮爾遜相關(guān)系數(shù)。使用EBSeq的函數(shù)median normalization 對(duì)count數(shù)目進(jìn)行標(biāo)準(zhǔn)化,再進(jìn)行對(duì)數(shù)化。 > if (!requireNamespace('BiocManager', quietly = TRUE)) install.packages('BiocManager') BiocManager::install('EBSeq', version = '3.8')> library(EBSeq) > NormData <- GetNormalizedMat(counts, MedianNorm(counts))> NormData.log <- log2(NormData + 1) > Norm.interest <- NormData.log[rownames(filter),] # filter是步驟5獲得的基因集7 使用psych 計(jì)算兩兩相關(guān)性psych在CRAN官網(wǎng)進(jìn)行下載。使用corr.test (也可以使用WGCNA的bicor函數(shù),如果用Python更快)函數(shù)對(duì)差異基因進(jìn)行兩兩的相關(guān)性計(jì)算。如果用所有基因計(jì)算數(shù)據(jù)量將大得可怕。因此我們只挑選差異基因進(jìn)行分析。如我們對(duì)這個(gè)2 x 3的實(shí)驗(yàn)組進(jìn)行兩兩差異計(jì)算,得到一個(gè)差異基因的總表,挑選這些基因進(jìn)行計(jì)算。以相關(guān)性 > 0.9 p小于0.01篩選出共表達(dá)基因 >library('psych')>Norm.interest.corr <- corr.test( t(Norm.interest), method='pearson', ci=F) > Norm.interest.corr$p[lower.tri( Norm.interest.corr$p,diag=TRUE)]=NA>Pval.adj <- as.data.frame(as.table(Norm.interest.corr$p)) > Correlation <- as.data.frame(as.table(Norm.interest.corr $r))> Cor.table <- na.exclude(cbind( Correlation, Pval.adj))[,c (1,2,3,6)] > colnames(Cor.table) <- c('gene1','gene2','cor','p.adj')> Cor.table.filt <- Cor.table [(abs(Cor.table[,3])>0.9 & Cor.table[,4] <0.01 ),] 8 使用igraph和Cytoscape可視化網(wǎng)絡(luò)使用igrah對(duì)前面篩出的互作基因Cor.table.filt進(jìn)行網(wǎng)絡(luò)分析,degree 是指節(jié)點(diǎn) (這里指基因)的連接度,即一個(gè)點(diǎn)有多少條邊相連,degree centrality是某個(gè)節(jié)點(diǎn)的度除以網(wǎng)絡(luò)中所有點(diǎn)能構(gòu)成的連接數(shù)目,能反應(yīng)一個(gè)基因的中心度。介度中心性 (betweenness centrality) 是指一個(gè)節(jié)點(diǎn)充當(dāng)其它兩個(gè)節(jié)點(diǎn)中間人的次數(shù)“被經(jīng)過(guò)”的感覺,用“被經(jīng)過(guò)次數(shù)”除以總的ties,即n(n-1)/2,計(jì)算方法見下圖 (來(lái)源于 易生信陳亮博士的擴(kuò)增子和宏基因組授課,本期推文同期有陳亮博士的“一文學(xué)會(huì)網(wǎng)絡(luò)分析 igraph更詳細(xì)假設(shè)”)。輸出的文件Node_nw_st.txt和之前獲得的Cor.table.filt兩個(gè)表格共同用于Cytoscape可視化了。 具體可視化見: R統(tǒng)計(jì)和作圖
易生信系列培訓(xùn)課程,掃碼獲取免費(fèi)資料更多閱讀心得體會(huì) TCGA數(shù)據(jù)庫(kù) Linux Python 高通量分析 免費(fèi)在線畫圖 測(cè)序歷史 超級(jí)增強(qiáng)子 |
|
|
來(lái)自: 生物_醫(yī)藥_科研 > 《WGCNA》