cytoscape教程.docx
- 文档编号:10873402
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:17
- 大小:30.99KB
cytoscape教程.docx
《cytoscape教程.docx》由会员分享,可在线阅读,更多相关《cytoscape教程.docx(17页珍藏版)》请在冰豆网上搜索。
cytoscape教程
Cytoscape基础教程笔记
partone
昨天开始学用Cytoscape,其tutorial分为两个部分,基础的和高级的。
基础教程又分成了四课:
GettingStarted、Filters&Editor、FetchingExternalData和ExpressionAnalysis。
为防忘记,做个摘记。
第一课新手上路,地址见http:
//goo.gl/FJLxp。
Cytoscape可以本地安装,也可以webstart。
软件得用java,所以要装JRE。
我在Ubuntu下装了OpenJDK,可以运行。
因为以前一直没把jnlp文件和java关联起来,所以从没成功webstart过,试了一下“课文”里给出的链接,似乎不太靠谱,总之是没法启动。
启动Cytoscape后,得下载两个样例文件。
以sif为后缀名的是蛋白相互作用网络信息,里面的蛋白以数字形式区别,以na为后缀名的是各数字id的注释,似乎两者的文件名必须相同才能关联起来。
sif文件的打开\导入有两种方式:
File→Import→Network(MultipleFileTypes)或者直接Ctrol+L,na文件是File→Import→NodeAttributes。
Network导入之后有多种显示风格,2.8版默认风格下,圆圈是各蛋白,称为节点(node),其间各线为edge,代表相互作用。
点中圆圈就选中了一个节点,想要多选,可以采用同时按Shift的方法,也可以先在Select→MouseDragSelects设置好选node还是选edge,然后鼠标拖放,一选一大片。
此外还可以有目的地选择。
比如可以Select→Nodes→ByName,然后输入蛋白id,即可选中此节点。
大海捞针即告完成。
此操作的快捷键是Ctrl+F。
如果已经选中了节点,还可以Select→Nodes→Firstneighborsofselectednodes,可将所选蛋白的直接相互作用蛋白选中,再选File→New→Network→Fromselectednodes,alledges,即将相互作用网络的一个子网络剥离出来。
Layout菜单的功能比较花哨,是关于相互作用网络图的组织原则的。
可以乱试一通,一张一张放在ppt里唬人,呵呵。
一团乱麻般的相互作用网络图下是查看节点或连线所代表的信息的地方,称为datapanel。
按Attributes按钮会弹出一个小窗口,可供选择需要列出的栏目的名字,比如id,或者对应的基因名,当然这个基因名信息是从na文件里导入的。
乱麻左边的窗口是有多个tab的控制面板。
Network那个tab里可以在导入的sif里切换。
VizMappertab里可以定制显示样式,比如圆圈变成方形,或者变大一些,或者换个底色,连线换个粗细和颜色等等。
如果莫名找不到的话,Cytoscape的菜单栏下有几个快捷按钮,其中有一个可以打开VizMapper。
各种样式设置好之后一定要点Apply,还可以新建或者另存,便于把所有的网络打上自创风格的烙印。
Cytoscape还支持从网上直接导入相互作用网络,也是在File→Import→Network(MultipleFileTypes)一步,选择remote,然后输入url。
从例题来看应该至少兼容SBML格式的。
不过lin下代理我还是搞不定,这种“奢侈”的功能姐还是表痴心妄想了……
Part2
第二课筛选和编辑,地址见http:
//goo.gl/n2z6V。
首先复习一下,还是以上一课那个sif和na文件。
依次导入、选择显示基因名。
课文里说要用到的插件不仅下载地址作废了,而且似乎并不需要。
可能已经整合到基本的功能包里了。
现在开始玩玩筛选。
首先用拖放选一大堆节点和连线(还是海选),然后Select→UseFilters,控制面板里即出现Filterstab,在此tab中点Options,在弹出的下拉菜单中选Createnewfilter。
然后开始定义筛选条件,比如连线的类型:
在FilterDefinition里选edge.interaction,然后点Add。
此时指定了筛选依据,而具体条件还没指明。
在Advanced里,输入non_core或者core之类的连线类型,当然Y2H神马的也行啦。
最后一定要按一下tab左下角的Apply。
此时选中了相互作用类型为non_core的节点和连线。
之后可以进行多种操作。
比如Edit→DeleteSelectedNodes/Edges,这样这些non_core的东西就统统删除了,剩下你认为更可信的蛋白及其相互作用。
可是还有一些和其他蛋白没有相互作用的蛋白,我们要把它们找出来、删除。
很简单,如法炮制,仅仅把相互作用筛选条件换成“*”就行,选好后再利用New→Network→Fromselectednodes,selectededges,调整一下layout:
Layout→spring-embeddedlayout,这张图里只有有相互作用的蛋白。
不过其实任务还剩个尾巴,有些蛋白可与自身相互作用,这部分蛋白还在这张图里。
课文里说可以手动搞定,不过不晓得是否有批量处理的办法。
导入的文件也并不总是完美的,有时需要添加和删除某些节点和连线,此时需要用到控制面板里的Editortab。
添加节点的话就在标有“AddaNode”的节点上点左键,然后把节点拖到右边的相互作用网络图里,在数据面板的NodeAttributeBrowser里可以看到新添的节点id为node0。
在此窗口里点相应栏目,即可修改其属性,比如基因名之类的。
添加连线的话,在Editortab里点“DirectedEdge”,如法炮制,拖到右边图里某个节点上,确定相互作用的一方,然后把另一端拖到某个节点之上。
连线属性在数据面板的EdgeAttributeBrowser里查看和修改。
删除:
选中要删的东西,然后Edit→DeleteSelectedNodes/Edges,此操作的快捷键是Del。
Part3
第三课获取外部数据,地址见http:
//goo.gl/t5rQl。
这一课要告诉我们:
a.从外部服务(比如SGD和BIND)下载Cytocape格式的数据;
b.用cPath插件获取外部数据,其中cPath从2.4版以后已经整合到Cytoscape核心包里了。
SGD是酵母的库,SaccharomycesGenomeDatabase,提供physical和genetic相互作用的信息,提供sif格式的下载,地址在:
http:
//db.yeastgenome.org/cgi-bin/batchDownload。
下载页面的说明挺简单,总之是指定想下的东西再重定向到另外一个页面,然后另存为就行了。
BIND是BiomolecularInteractionNetworkDatabase,主要提供蛋白相互作用信息,现在整合到BOND库里了。
下载地址是
另外还有PathwayCommons库,地址是http:
//www.pathwaycommons.org/。
课文也不知道啥时候编的,说建成后会超过BIND库,瞧瞧网站的意思,至少上线两年了,应该已经算建成了吧。
目前已经整合的库包括:
BioGRID、CancerCellMap、HPRD、HumanCyc、IMID、IntAct、MINT、NCI/NaturePathwayInteractionDatabase,具体的说明见Pathguide。
说起来Pathguide也是个奇网站,是个介绍全部325个途径和相互作用相关的数据库的概况的数据库,相当于目录或者提要。
从这里你可以找到蛋白-蛋白相互作用、代谢途径、信号传导途径、表达途径、转录因子/基因调控网络、蛋白-复合物相互作用、genetic相互作用网络、proteinsequencefocused等等类型的数据库,查看其概况,然后决定去哪个库搜索信息。
最后是用cPath插件从CPpath数据库直接获取数据,后者从08开始就不更新了,而且建议用户使用Pathwaycommons。
下载多个源的相互作用网络文件后,可以融合成一张图,需要用到GraphMerge插件。
这个插件可能也整合进核心包了,疑似Plugins下的AdvancedNetworkMerge。
Part4
第四课表达分析,地址见http:
//goo.gl/Mu6aP。
终于开始做正经事儿了,先唏嘘二点五秒钟~~
好了唏嘘完毕,开始学习。
首先下载三个文件:
galFiltered.sif、galExpData.pvals和galExpData.mrna。
接下来通过操作下载的示例文件来学习:
1.导入galFiltered.sif,弹出数据面板和结果面板,最大化画布,用spring-embedded风格显示。
2.文本编辑器打开mrna文件,可以看到第一行是数据标签。
对应于相互作用网络图,第一栏为节点名称,必须和sif文件里的节点名一模一样哟;第二栏是基因座名,Cytoscape里目前不显示;后面各栏是表达信息。
各栏之间用whitespace隔开。
这个mrna应该就是芯片直接导出的数据的格式吧?
3.导入表达信息:
Import→Attribute/ExpressionMatrix...,快捷键Ctrl+E。
导入后,NodeAttributeBrowser里就能看到这个节点的表达量了。
基础工作就此结束,下面要玩花哨的活儿了。
4.首先可以根据表达量高低给节点上不同的颜色。
在VizMapper里先新建个显示风格,然后双击Nodecolor,选择按照某类表达量分类,选continuousmapping,然后点开下面那张颜色图设置阈值和颜色。
别忘了按Apply哟。
下面是一些背景知识。
Gal1、Gal4和Gal80都是酵母转录因子,在相互作用网络里分别对应YBR020W、YPL248C和YML051W。
相互作用有两种类型:
protein-protein(pp)和protein-DNA(pd)。
表达量信息分别是Gal1、Gal4和Gal80的表达异常情况下的值。
现在我们要看这三个转录因子表达异常影响到的基因。
5.首先要把pp相互作用除去。
用filter和DeleteSelectedNodesandEdges。
然后用yFilesOrganiclayout查看剩下的连线。
6.查看剩下的强烈诱导或抑制的节点,选择它们,选择其直接相邻节点,复制到新的相互作用图里便于查看。
然后可以好好看看转录因子对不同蛋白的表达量的作用了。
Part5
第五课使用AgilentLiteratureSearch插件,地址见http:
//goo.gl/zz94b。
进入高级课程了,呵呵。
其实就是完成了一半,换个fancy的名字而已。
不过还是挺有效,觉得小有成就感。
本课中将要学到:
a.利用AgilentLiteratureSearch从文献搜索关键词中建立putative分子间联系的相互作用网络;
b.研究插件建立的联系,删除自己认为不靠谱的;
c.利用上下文信息改进搜索。
需要注意的是随着文献的增多,文中提供的提取文献信息的模型可能会过时。
因此需要学会改进搜索。
首先要下载和安装AgilentLiteratureSearch(ALS)插件。
下载jar后放到plugins文件夹,关了重新开Cytoscape就可以了。
打开Plugins→AgilentLiteratureSearch,同意协议,弹出搜索设置框,设置搜索关键字、种属关键字、每页显示paper数,Edit下可以设置代理。
设置好后按蓝色的小三角,结果框显示paper海,同时画布上显示从文献信息里构建出来的相互作用网络。
文献搜索和网络构建的详细机制是这样的:
首先根据关键词基于摘要和关键词搜索文献;然后扫描文章内容,不论是否包含搜索关键字,都创建一个由putative相互作用构成的网络。
因此有时会看到没有指定要搜索的蛋白或者基因,除掉它们的话提高匹配的数量阈值就行了。
得到初步结果之后,接下来就是做paper民工的活计了。
选中图里的连线,右键,选择EvidencefromLiterature,弹出的小菜单包括ShowSentencesfromtheLiterature、GatherEvidencefromtheLiterature、ExtendNetworkfromtheLiterature还有HighlightSearchTerms。
选择ShowSentencesfromtheLiterature,弹出窗口,里面是创建网络基于的文献语句。
觉得不靠谱的话就右键点击该句子,然后DeleteSentence掉。
此句对应的连线的所有句子都删除掉了,连线就很知趣地消失了,两个节点也不见了,强大呀~~~
除了以句子为判定单位,还可以以paper为判定单位。
在文献搜索窗口的“QueryMatches”部分右键点击某篇paper,点“DeleteMatch”,该paper对应的连线就全部消失了。
如果paper旁边有一个小的Cytoscape的logo,则右键菜单里会出现“HighlightMatch”一项。
它的功能是高亮来自该paper的所有节点和连线(默认显示风格下,节点变黄,连线变红)。
最后,如果要保存搜索结果的话,搜索窗口的File菜单下有两个选项:
“LoadSearchResults”和“SaveSearchResults”。
后面的我就不废话啦。
接下来是手艺活儿:
改进搜索。
首先我们来熟悉一下搜索窗口里的各式奇门设置:
a.“ExtractionControls”部分的下拉菜单中选,右上角“Context”框里的关键词会想应改变;b.每个搜索引擎的匹配数上限。
公共搜索引擎太强大,匹配数上限设太高可能导致返回海量数据,进而导致超大型相互作用网络,进而导致……死机,所以还是谨慎为妙;c.“ExtractionControls”下,“InteractionLexicon”控制用于判定putative相互作用的动词的列表。
选“limited”则只有句子里包含诸如激活、甲基化、切割之类的“高置信度”的动词时才算作putative相互作用;选“relaxed”则范围放宽,诸如加入、提高、诱导之类的也算;d.View菜单下可选搜索引擎,只有三种:
PM、OMIM和USPTO;e.“SearchControls”下的“UseAliases”按钮,即可使用蛋白的姓名别名曾用名,比如p53就成了p53ORtrp53ORtp53,这样搜索结果的完整性可大大提高;f.输入关键词,一行一个,超过一个单词则需用引号括起来;g.“Context”框里不仅可以设置物种(其实删掉也无妨),还能指定主题,比如癌症、阿尔茨海默症等,可让搜索结果特异性更好。
g.如果你也是个CNS控,可以在“QueryEditor”框里指定:
(P53)ANDCancerAND(Science[ta]ORNature[ta]),这个表达式的意思是搜索发表在S和N上的带有P53和Cancer关键字(也有可能带别名的)的paper。
更多高级搜索的语法见数据库的帮助文件,如我自己常用的PM:
http:
//www.ncbi.nlm.nih.gov/books/NBK3827/#pubmedhelp.Search_Field_Descrip。
所有都设好后按下方的蓝三角开始搜索。
在分析相互作用网络的过程中,也可以随时利用文献搜索。
比如右击某条连线,LinkOut→Entrez→Pubmed,选择后打开默认浏览器,显示PM搜索结果。
课文儿说搜索完成后EdgeAttribute浏览器里会多出几个属性,包括:
a.HasTSI,代表该相互作用是否有文献支持;b.NumberOfSources,代表支持该相互作用的paper的数目;c.nbrSentences,代表支持该相互作用的句子的数目。
此外Cytoscape主程序的EvidencefromLiterature菜单下选中“ShowSentencesfromtheLiterature”后,会弹出窗口,列出支持该相互作用的句子,给出此列表的搜索沿用最近一次搜索的设置。
不过这两个结果我都没做出来,可能还是因为不能连通PM,导致不能初始化搜索所致。
对节点也能用这个方法搜索,等效于对连接该节点的所有连线做搜索。
Part6
第六课GO分析,地址见http:
//goo.gl/4IOXt。
要学习声名赫赫的BiNGO了,话说我就是因为这插件才开始决心学用Cytoscape的,小激动一下。
以酵母那个galFiltered.sif为例,Ctrl+Lload进来。
接着导入GO信息:
File→Import→OntologyandAnnotation...。
弹出的窗口里设置annotation和ontology类型,ms是选好之后直连的,不过苦命的姐还是选Browse下的BrowseLocalFiles吧。
设定好之后按右下角的Import。
导入GO信息后要对显示设置做些修改,让GO信息显示容易寻找和查看。
点快捷栏最右边那个一页纸上压着个大螺丝的图标,SearchonAttribute下把UniqueIdentifierannotation.GOBIOLOGICAL_PROCESS,当然神马annotation.GOCELLULAR_COMPONENT之类的也可以啦。
最后点右下角的ReindexNetwork。
然后主窗口里纸和螺丝旁边那个搜索框里搜索的类型就改成了GOBP,还带关键字选项的哟。
接下来学习激动人心的GOterm富集分析:
1.Select→Nodes→ByName...。
太弱?
好吧,Ctrl+F。
选Gal4吧。
2.Select→Nodes→FirstNeighborsofSelectedNodes。
太弱?
好吧,Ctrl+6。
3.New→Network→Fromselectednodes,alledges。
太弱?
好吧,Ctrl+N。
4.切换到新建的网络。
Select→Nodes→Selectallnodes。
太弱?
好吧,Ctrl+Alt+A,5。
5.Plugins下点开BiNGO。
弹出BiNGO设置窗口,按照偏好,完成后面的设置:
a.给聚类分析取个名字;b.勾上“GetClusterfromNetwork”框;c.“Selectastatisticaltest”下,选择“Hypergeometric”,如果数据量非常大,可以选用“Binomial”,不过一般的处理用Hypergeometric即可;d.“Selectamultipletestingcorrection”下,选用“Benjamini&HochbergFalseDiscoveryRate(FDR)”,这种FDR计算方法比Bonferroni较为不保守,不过多数情况下已经够用;e.“Chooseasignificancelevel”输入“0.05”,此阈值控制计算结果中报告的GO分类的细致程度,0.05并不一定足够保守,不过可以根据结果调整此阈值;f.“Selectthecategoriestobevisualized”下选择“Overrepresentedcategoriesaftercorrection”,这样结果中就能直接看到富集的分类,当然选别的也可以;g.“Selectreferenceset”下,选择“Testclusterversuscompleteannotation”,即富集计算的比较背景是所有得以GO注释的基因;h.“Selectontology”下选择GO_Biological_Process”,计算GOBP大类下的各分类的富集程度,当然别的也行,比如我的主要是GOCC啦;i.“Selectorganism/annotation”下翻啊翻啊翻,翻到样品所属的物种;j.勾上“CheckboxforsavingData”,点击“SaveBiNGODatafile”按钮,选定目的目录,BiNGO会导出一个文本文档,内列出各显著富集的节点的p值,文件名即最开始给聚类分析起的名字,后缀名是.bgo。
此外,文件里还列出分析时所用参数和得到富集的GOterm。
6.一大堆选完后,点击“StartBiNGO”。
分析完成后弹出运行报告,内容在bgo文件里也有。
还返回一个相互作用网络,显示上一步f下选的那些节点。
节点的标签显示的是属于上一步h下选的GO注释种类的term。
默认颜色分布:
富集程度越高则节点背景越偏橙色,越低则越靠近黄色。
白色节点表示未被显著富集,之所以出现在结果中是因为他们的某个子节点显著富集。
结果中节点的多少是与提交到分析的节点的多少成正比的。
6.NodeAttribute浏览器下点“SelectAttributes”,能看到多了一些属性,均以聚类名结尾,包括:
a.description_test,显示GOterm;b.adjustedPValue_test,multiplehypothesistesting后的p值,后面四个是该testing中要用到的值;c.n_test,此GOterm下的节点的数目;d.x_test,所选的节点中此GOterm下的节点数目;e.N_test,背景基因组中带有所选类型的GO注释的节点的数目;f.X_test,所选的节点的数目。
7.勾上这些属性,逐个考察。
8.下面可以玩一玩初级视觉游戏。
选择白节点,或者加上你觉得太黄太暴力的几个节点,然后Select→Nodes→Hidenodeselection,这些看着不爽的节点就知趣地消失了。
9.当然它们随时待命,召之即来:
Select→Nodes→Showallnodes。
下面玩一个不同类型处理的combo。
目前的情况是得到了Gal4敲除或沉默或过表达后得到富集的子相互作用网络,而该网络来源于半乳糖利用这条途径,于是想看看在这些富集的GOterm中,哪些属于仅仅涉及半乳糖利用途径,又是哪些还特异地与Gal4效应子网络相关。
为区分这两类节点,首先分出一个子网络,然后做BiNGO富集分析,详细操作如下:
1.回到妈妈网络,选中Gal4的Ctrl+6。
2.BiNGO设置窗口的“SelectReferenceSet”选“Testclusterversusnetwork”,当然,得给这个聚类分析起个新名字,就比如test2吧。
运行BiNGO。
3.比较新老BiNGO结果网络。
新结果中丢失的term可能仅与半乳糖利用相关。
4.NodeAttribute浏览器下点“SelectAttributes”,能看到有些属性变了,现在有adjustedPValue
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- cytoscape 教程
![提示](https://static.bdocx.com/images/bang_tan.gif)