小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

psych igraph:共表達(dá)網(wǎng)絡(luò)構(gòu)建

 生物_醫(yī)藥_科研 2019-03-25

WGCNA分析,簡(jiǎn)單全面的最新教程詳細(xì)介紹了WGCNA構(gòu)建共表達(dá)網(wǎng)絡(luò)的原理和過(guò)程,但有時(shí)由于樣本太少,效果不理想,找不到合適的Power值。實(shí)驗(yàn)室?guī)煹軒熋媒?jīng)常在討論樣本較少的時(shí)候如何篩選共表達(dá)基因(轉(zhuǎn)錄因子的突變體/轉(zhuǎn)基因材料和野生型材料在2-3個(gè)時(shí)間點(diǎn)進(jìn)行轉(zhuǎn)錄組測(cè)序),加上3個(gè)生物學(xué)重復(fù)勉強(qiáng)構(gòu)成18個(gè)樣本。這樣的實(shí)驗(yàn)設(shè)計(jì),已經(jīng)足夠算出各個(gè)時(shí)間點(diǎn)或者處理間的差異基因和任意基因之間的相關(guān)系數(shù)。本文介紹少樣本如何構(gòu)建共表達(dá)無(wú)向網(wǎng)絡(luò),篩選共表達(dá)基因的流程。

授權(quán)轉(zhuǎn)載自SimonCat,有增刪。

0 實(shí)驗(yàn)設(shè)計(jì)
材料時(shí)間點(diǎn)重復(fù)數(shù)據(jù)
野生型脅迫處理1,6,12h3RNA-seq SE 單端測(cè)序
突變體脅迫處理1,6,12h3RNA-seq SE 單端測(cè)序
思路:(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ì)

$ hisat2-build TAIR10_Chr.all.fasta TAIR10_Chr.all
$ echo ’nohup $WD/tools/hisat2-2.0.5/hisat2 -x TAIR10_Chr.all -U $1 -S $1.sam > $1.align.stat.txt’ > script.align.sh
$ ls *.trim.fil.gz | xargs -n1 -P2 sh script.align.sh
4使用htseq-count,獲得每個(gè)基因的counts數(shù)目
$ echo 'htseq-count -s no $1 TAIR10.gtf > $1.count ' > script_count.sh
$ ls *sam|xargs -n1 sh script_count.sh
# 注意用grep -v 去除掉htseq-count生成文件中的無(wú)用信息
$ csvtk join -t treat_1h_rep1.count treat_1h_rep2.count treat_1h_rep3.count control_1h_rep1.count  control_1h_rep2.count  control_1h_rep3.count > 0h_count.txt
$ csvtk join -t treat_6h_rep1.count treat_6h_rep2.count treat_6h_rep3.count control_6h_rep1.count control_6h_rep2.count control_6h_rep3.count > 6h_count.txt
$ csvtk join -t treat_12h_rep1.count treat_12h_rep2.count treat_12h_rep3.count control_12h_rep1.count  control_12h_rep2.count  control_12h_rep3.count > 12h_count.txt
$ csvtk join -t 0h_count.txt 6h_count.txt 12h_count.txt > total_count.txt

備注: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可視化了。

# By Chen Liang

node_pro <- function(igraph){  

  # 節(jié)點(diǎn)度

  igraph.degree <- igraph::degree(igraph)

  # 節(jié)點(diǎn)度中心性

  igraph.cen.degree <- round(centralization.degree(igraph)$res,3)

  # 節(jié)點(diǎn)介數(shù)中心性

  igraph.betweenness <- round(centralization.betweenness(igraph)$res,3)

  # 節(jié)點(diǎn)中心性

  igraph.closeness <- round(centralization.closeness(igraph)$res,3)

  #igraph.node.pro <- cbind(igraph.degree,igraph.closeness,igraph.betweenness,igraph.cen.degree)

  #colnames(igraph.node.pro)<-c('igraph.degree','igraph.closeness','igraph.betweenness','igraph.cen.degree')

  igraph.node.pro <- data.frame(Node=names(igraph.degree), igraph.degree,igraph.closeness,igraph.betweenness,igraph.cen.degree)

}

net_node_attr <- node_pro(net)[,1:4]

write.table(net_node_attr, file='Node_nw_st.txt', row.names=F, col.names=T,quote=F,sep='\t')

 具體可視化見:

R統(tǒng)計(jì)和作圖

易生信系列培訓(xùn)課程,掃碼獲取免費(fèi)資料

更多閱讀

畫圖三字經(jīng) 生信視頻 生信系列教程 

心得體會(huì) TCGA數(shù)據(jù)庫(kù) Linux Python 

高通量分析 免費(fèi)在線畫圖 測(cè)序歷史 超級(jí)增強(qiáng)子

生信學(xué)習(xí)視頻 PPT EXCEL 文章寫作 ggplot2

海哥組學(xué) 可視化套路 基因組瀏覽器

色彩搭配 圖形排版 互作網(wǎng)絡(luò)

自學(xué)生信

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多