19

转录组-GO和KEGG富集的R包clusterProfiler

PS: 请不要在问我关于这个包的任何问题,直接联系Y叔,我就两年前用过一次而已,再也没有用过。

Y叔的包更新太频繁了,这个教程已经作废,请不要再照抄了,可以去我们论坛看新的教程:http://www.biotrainee.com/thread-1084-1-1.html

一:下载安装该R包

clusterProfiler是业界很出名的YGC写的R包,非常通俗易懂,也很好用,可以直接根据cuffdiff等找差异的软件找出的差异基因entrez ID号直接做好富集的所有内容; Continue reading

19

转录组-GO通路富集-WEGO网站使用

一,所谓的网站,其实就是一个网页版的可视化软件接口而已

看看网站主页,看看它需要什么数据

http://wego.genomics.org.cn/cgi-bin/wego/index.pl

转录组-GO通路注释-WEGO网站使用181

二,所需要的数据

1,human.all.go.entrez,需要自己制作,每个基因名entrez ID号,对应着一堆GO通路,人有两万多个基因,所以应该有两万多行的文件。

转录组-GO通路注释-WEGO网站使用247

2,差异基因的GO通路,需要用cuffdiff得到差异基因名,然后用然后用脚本做成下面的样子。记住,上面的那个人类的背景GO文件也是一样的格式,基因名是entrez ID号,与GO通路用制表符隔开,然后每个基因所对应的GO直接用空格隔开。格式要求很准确才行。

转录组-GO通路注释-WEGO网站使用379

 

三,上传数据,出图

转录组-GO通路注释-WEGO网站使用391

点击plot画图即可,就可以出来了一个GO通路富集图

转录组-GO通路注释-WEGO网站使用420

顺便贴上wego上传数据制作的几个脚本,脚本这种东西都很难看,随便意思一下啦,用一下脚本处理就可以得到wego需要上传的数据了

1,得到差异基因名,并且转换为entrez ID号
grep yes gene_exp.diff |cut -f 3 |sort -u >diff.gene.name
cat diff.gene.name  ../Homo_sapiens.gene_info  |perl -alne '{$hash{$_}=1;print $F[1] if exists $hash{$F[2]}}' |sort -u >diff.gene.entrez
2,根据找到的差异基因的entrez ID号来找到它的GO信号,输出文件给wego网站
cat diff.gene.entrez ../gene2go |perl -alne '{$hash{$_}=1;print "$F[1]\t$F[2]" if exists $hash{$F[1]}}' |perl -alne '{$hash{$F[0]}.="$F[1] "}END{print "$_\t$hash{$_}" foreach keys %hash}' >diff.gene.entrez.go
3,得到entrez ID号跟ensembl ID号的转换hash表
perl -alne '{if (/Ensembl:(ENSG\d+)/) {print "$1=>$F[1]"} }' Homo_sapiens.gene_info >entrez.ensembl
4,得到人类entrez ID的go背景
grep '^9606' gene2go |perl -alne '{$hash{$F[1]}.="$F[2] "}END{print "$_\t$hash{$_}" foreach sort keys %hash}' >human.all.go.entrez
5,把人类entrez ID的go背景转换成ensembl的go背景
cat entrez.ensembl human.all.go.entrez |perl -F"=>" -alne  '{$hash{$F[1]}=$F[0];print "$hash{$F[0]}\t$F[1]" if exists $hash{$F[0]}}' >human.all.go.ensembl

在我的群里面共享了所有的代码及帖子内容,欢迎加群201161227,生信菜鸟团!

http://www.bio-info-trainee.com/?p=1

线下交流-生物信息学
同时欢迎下载使用我的手机安卓APP

http://www.cutt.com/app/down/840375