python外文文献.docx
- 文档编号:23736239
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:13
- 大小:110.51KB
python外文文献.docx
《python外文文献.docx》由会员分享,可在线阅读,更多相关《python外文文献.docx(13页珍藏版)》请在冰豆网上搜索。
python外文文献
python外文文献
LT
clustervalidationtechniques.Finally,ETE'sprogrammabletreedrawingenginecanbeusedtoautomatethegraphicalrenderingoftreeswithcustomizednode-specificvisualizations.
Conclusions
ETEprovidesacompletesetofmethodstomanipulatetreedatastructuresthatextendscurrentfunctionalityinotherbioinformatictoolkitsofamoregeneralpurpose.ETEisfreesoftwareandcanbedownloadedfromhttp:
//ete.cgenomics.org.
Treesarecommonlyusedtorepresenttheresultsofmanybioinformaticsanalyses.Inparticular,suchtypeofbinarygraphsareidealtodescribethehierarchicalrelationshipsamongavarietyofbiologicalentities.Somecommonexamplesaretheevolutionaryanalysisofmolecularsequencesortheclusterizationofgenesandproteinsaccordingtotheirproperties.Besidestheinformationencodedinthetopologyoftrees,branchlengthscanalsobescaledtoprovideinformationonthedistancesbetweenthedifferentpartitions.Inphylogenetics,forinstance,treesareusedtoillustratetheevolutionaryrelationshipsamongspeciesormolecularsequences,consideringterminalnodesasextantOperationalTaxonomicUnits(OTU)andinternalnodesastheircorrespondingancestors.Insuchphylogenetictrees,branchlengthsareusuallyproportionaltotheevolutionarydistanceamongsequences.Otherapplications,suchastheanalysisofgeneexpression,usehierarchicalclusteringanalysistogroupgenesorexperimentalconditionsaccordingtothesimilarityoftheirexpressionpatterns.Likewise,treesareusedbymanyproteinclassificationmethodsandfortheanalysisofphylogeneticprofiles.Thus,theanalysisoftreedatastructuresisacommontaskinmanyareasofbioinformaticsandthereisaneedforanalyticalandvisualizationtools.Inthisrespect,anumberofbioinformaticprogramsdoexistthatassistintheexplorationofhierarchicaltrees.Mostofthem,however,consistofstandaloneapplicationsthatarefocusedonvisualizationand,occasionally,onperformingspecifictests.SomewellknownexamplesareTreeView[1],awidelyusedprogramforinspectingphylogenetictrees;ClusterTreeview[2],anapplicationforvisualizingmicroarrayclusteringresults;ATV[3],ajavaprogramusedtoexplorephylogenieswhichprovidesalsosomeeditingoptions;MEGA[4],anevolutionarygeneticsanalysissuitethatincludesabuilt-intreeviewer;andmanyotherrecentapplications[5-8].Whilealltheseprogramsareveryusefultomanagesingletrees,theycanhardlybeautomatizedoradaptedtospecificneeds.Thus,whentheanalysisofhundredsorthousandsoftreesisrequired,theuseofstandaloneprogramsbecomesrestrictive,becauseamuchhigherlevelofautomationisrequired.Insuchcases,programmingtoolkitsrepresentamoreadequateframework,sincetheyprovidetoolsandmethodstohandledataatalowerlevel.Usingtoolkits,bioinformaticianscaneasilycreatetheirownanalysispipelinesandprogramcustomtasksoverlargecollectionsofdata[9].Severalgenericbioinformatictoolkitsdoexistthatcoverawiderangeofprogramminglanguagesandscopes,withBioPerl[10]andBioPython[11]beingthemostextensivelydeveloped.Togetherwithabroadrangeofotherfeatures,thesetoolkitsallowcertainlevelofinteractionwithtreedatastructures.However,onlybasicactionsarecurrentlysupported.Alternatively,thePyCogent[12]andP4http:
//bmnh.org/~pf/p4.htmlpythontoolkitscanbeusedtoextendthisfunctionality,althoughtheyaremostlyfocusedonphylogeneticreconstruction.R[13],ageneralpurposestatisticalframework,doesincludeseveralpackagestoperformstatisticaltestsonclusteringandphylogenetictrees.Nevertheless,thesepackagesarefocusedonperformingspecificanalysesratherthaninprovidingtreehandlingandmanipulationfeatures.Finally,incontrasttothegreatnumberofstandalonetreeviewers,programmingtoolkitsofferfew,ifany,graphicalrenderingpossibilities.AnintermediatealternativebetweenstandaloneviewersandprogrammatictreerenderingisthatoftheTreeDynprogram[14],whichhassupportforsomescriptingoptionsandcanbeusedtocreatefullyannotatedtreeimages.
Inresponsetotheselimitations,wepresentheretheEnvironmentforTreeExploration(ETE),apythonprogrammingtoolkittoanalyze,manipulateorvisualizeanykindofhierarchicaltree.Itextendsthefunctionalityinothertoolkitsandallowsahighlevelofcustomization.ETE'sdrawingfeatures,althoughlessexhaustivethaninstandaloneeditors,relyonthePythonscriptinglanguage,whichmakespossibletocombineadvancedtreeanalysesandtreevisualizationintoasingleprogram.Thetoolkitincludesmethodstobrowseandmanipulatetreetopologies,providessupportfortheNewHampshireeXtended(NHX)formatandallowsadvancedactionssuchasnodeannotation,automaticrooting,cut&pastepartitions,treeconcatenation,nodesearch,andbranchdistancerelatedoperations.Inaddition,ETEimplementstwospecificmodulestoworkwithphylogeneticandclusteringtrees.Thephylogeneticextensionallowstreestobelinkedtotheircorrespondingmultiplesequencealignments,includestwoorthologyandparalogypredictionalgorithms,implementstheduplicationdatingmethoddescribedin[15]andprovidesaccesstothePhylomeDBdatabase[16].Similarly,clusteringtreescanbelinkedtotheirsourcedata,whichallowstreepartitionstobeanalyzedthroughseveralvalidationtechniques.Additionally,ETEimplementsafullyprogrammabledrawingenginethatcanbeusedtogenerate,dynamically,customtreerepresentationsinPDForPNGformats.Thisdrawingengineisfullyintegratedwiththebuilt-inextensions,thusprovidingpre-definedvisualizationlayoutsforclusteringtreesandphylogenies.AGraphicalUserInterfaceisalsoincludedwhichallowsontheflyinteractionwithtrees.
Currently,theETEtoolkitisusedindiverseprojects,includingGEPAS[17],Phylemon[18]andPhylomeDB[15].ETEpackageanddocumentationcanbeaccessedathttp:
//ete.cgenomics.org
Implementation
ETEisentirelywritteninPython[19],aprogramminglanguagethatoffersastrongsupportforintegrationwithotherlanguagesandtools,andwhosepopularityisraisingamongthebioinformaticscommunity[20].ETE'sphilosophyistofacilitatetheintegrationwithothertoolkitsaswellastoprovideascalableprogramarchitecture.Thus,ETEtreeobjectscanbeeasilyimportedandexpandedbyincorporatingcustommethodsandproperties.ThefunctionalityoftheETEtoolkitisdividedintoseveralpythonmodules,whichcanbeimportedatconvenience.AsummaryoffeaturesofthedifferentmodulesisshowninTable
Treehandlingmodule
ETE'smainmoduleallowstoreadandrendertreesusingthetwomostcommonformats:
NewHampshire(NH)andNewHampshireeXtended(NHX).Moreover,itallowstogeneraterandomtreesorcreatecustomtreestructuresfromscratch.Inordertoincreasecompatibilitywithothertools,severalnewickformatstandardsarecurrentlysupportedbyETE,bothforreadingandwritingtrees(seeETE'sextendeddocumentation).ETE'streesareinternallyencodedasaseriesoftreenodeinstancesconnectedfollowingaparent-childrelationship.EachnodeisencodedasanindependentPythonobject,whichprovidesmanymethodstomanipulateitsconnections(i.e.add,remove,deleteordetachnodes)andtoeasilybrowseitstopology(i.e.treetraversalandgetterminal,children,sisterordescendantnodes).Asaconsequence,eachinternalnodeistreatedasafullyfeaturedsubtree,thusallowingtoanalyzedifferentpartsoftreesseparately.ETE'streeobjectimplementationsupportsmultifurcationsandcanbeusedtodealwithverylargestructures.Asareference,theNCBItaxonomynewicktreefile,withmorethan450.000nodes,couldbeloadedasanETEtreeobjectin40seconds(IntelXeonCPU2.33GHz).
OneofthemainadvantagesofETEascomparedtoothertoolkitsisthatnodescancontainadditionalinformationotherthantopologyandbranchdistances.Usersarefreetoassociateanyexternaldatatothedifferenttreenodesandthenusesuchdatainthesubsequentanalyses,integratethemaspartoftheirtreeimagesorsavethemusingtheNHXformat.Thisfunctionalityprovidesthepossibilityofcreatingfullyannotatedtrees.
Finally,acompletesetofoperationsareavailabletobrowse,analyzeormodifytrees:
i.e.)pre-andpost-ordertraversingstrategies,searchnodesorpartitionsmatchingspecificcriteria,midpointandspecies-guidedautomatictreerooting,calculatedistancesbetweenbranches,detectionofcommonancestors,randomtreebuilding,topologymanipulation,treepruning,treeconcatenation,cutandpastepartitions,etc.
Treerenderingandvisualization
Thevisualizationmoduleprovidesaprogrammabledrawingsystemtorenderhierarchicaltreestructuresasdendrograms.Thecoreofthisextensionconsistsofanimagedrawingalgorithmthatcanbecontrolledbyasetofuser-definedrules.Suchrulescanbewrittenassmallpythonfunctionsandareusedtodetermine,dynamically,theaspectofeachtreenode.Thisallows,forinstance,tovarytheaspectofeachnodeaccordingtoitsinternalproperties.Moreover,therenderingengineallowsnotonlytodrawtreetopologiesbutalsotoincorporateexternalgraphicalinformationtoeachnode.Thus,externalimages,graphsorcustomtextlabelscanbeaddedtonodesaspartofthegeneraltreeimage.Theprogramaticuseofthetreedrawingmoduleallowsuserstocontrolhowtreesarerenderedandwhatinformationisshownforthedifferentnodes.ImagescanberenderedasPNGorPDFfiles.
Inadditiontothedrawingengine,treescanbeinteractivelyvisualizedusingabuilt-inGraphicalUserInterface(G
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- python 外文 文献