BioPerl

BioPerl
Típusú Bioinformatika
Beírva Perl
Operációs rendszer Linux , Mac OS X , Microsoft Windows
Első kiadás 2002. június 11 ( 2002-06-11 )
legújabb verzió 1.7.8 (2021. február 3. ) ( 2021-02-03 )
Engedély GNU általános nyilvános licenc és művészi licenc
Weboldal bioperl.org , metacpan.org/pod/BioPerl

A BioPerl [1] [2] a Perl modulok nagy gyűjteménye, amelyek elősegítik a Perl szkriptek fejlesztését bioinformatikai feladatokhoz . A BioPerl fontos szerepet játszott a Human Genome Projectben [3] .

A BioPerl Perl programozási nyelven íródott , ennek köszönhetően a platformok közötti kész megoldások támogatottak ( Linux , a legtöbb UNIX-szerű rendszer , Mac OS X , Microsoft Windows ). Szabadon és nyíltan fejlesztik és terjesztik. A fejlesztőkből és tudósokból álló aktív nemzetközi közösséggel rendelkezik.

Létrehozási előzmények

A BioPerl egy aktív nyílt forráskódú szoftverprojekt , amelyet az Open Bioinformatics Foundation tart fenn . Az első Perl-kódkészletet a BioPerl számára Tim Hubbard és Jong Bhak készítette a Medical Research Council (Egyesült Királyság) (MRC) cambridge-i központjában, ahol az első genomszekvenálást Fred Sanger végezte el . Az MRC a modern bioinformatika egyik központja és szülőhelye volt, mivel nagyszámú DNS-szekvenciát és háromdimenziós fehérjestruktúrát tartalmazott.

Tim Hubbard a Perl könyvtárat használta , amely sok hasznos Perl-rutint tartalmazott a bioinformatika számára. Jong Bhak, Tim Hubbard első végzős hallgatója létrehozta a szkriptet . Bhak egyesítette a két Perl szubrutinkönyvtárata Bio.pl- be.

A BioPerl nevet Bhak és Steven Brenner közösen találta ki a Center for Protein Engineering -ben (CPE). 1995-ben Brenner megszervezte a BioPerl szekciót az Intelligent Systems for Molecular Biology (ISMB) konferencián Cambridge-ben. A BioPerl az elkövetkező hónapokban felhasználókat szerzett, köztük Georg Fuellent, aki egy németországi tréning házigazdája volt. Fuellen kollégái és diákjai nagymértékben kibővítették a BioPerl-t.

Ezenkívül a BioPerl-t más felhasználók is kiterjesztették, köztük Steve Cherwitz (aktívan fejlesztette élesztő genom adatbázisának Perl kódjait). Jelentős bővülés történt, amikor a cambridge-i hallgató, Ewan Birney csatlakozott a fejlesztőcsapathoz .

Az első stabil megjelenésre 2002. június 11-én került sor. A legutóbbi (API szempontjából) stabil kiadás az 1.7.8, 2021. február 3-án. A fejlesztői kiadások is rendszeresen megjelennek. A sorozat 1.7.x verziója a BioPerl legstabilabb (hibák szempontjából) verziója, és mindennapi használatra ajánlott.

Hatás az emberi genom projektre

A Human Genome Project fennállása során számos kihívással szembesült. E problémák egy része megoldódott, amikor sok genomikai labor elkezdte használni a Perlt. Az egyik ilyen probléma az összes DNS-szekvencia elemzésének folyamata volt. Egyes laboratóriumok nagy monolitikus rendszereket építettek összetett relációs adatbázisokkal, amelyek hibakeresése és megvalósítása örökké tartott, és az új technológiák felülmúlták őket. Más laboratóriumok megtanulták, hogyan lehet moduláris, lazán csatolt rendszereket létrehozni, amelyek alkatrészei az új technológiák megjelenésével felcserélhetők. Az összes laboratóriumból származó kezdeti eredmények közül sok vegyes volt. Végül felfedezték, hogy a lépések közül sok megvalósítható, ha a lazán csatolt programok egy Perl shell szkripten futnak keresztül.

Egy másik javított probléma az adatmegosztás. Minden laborban általában különböző programok futottak a szkriptekkel, ami több konverziót eredményezett az eredmények összehasonlításakor. Ennek orvoslására a laboratóriumok közösen elkezdték használni a szuperadatkészletet. Az egyik szkriptet használták a szuperkészletből az egyes laborok halmazává történő átalakításhoz, a másik szkriptet pedig a visszakonvertáláshoz. Ez minimálisra csökkentette a szükséges szkriptek számát, és könnyebbé vált a kommunikáció a Perl-lel.

Jellemzők és példák

A BioPerl előnyeinek kihasználásához a felhasználónak ismernie kell a Perl programozási nyelvet, beleértve a Perl hivatkozások, modulok, objektumok és metódusok Perlben való használatát.

A BioPerl nem tartalmaz kész programokat, de univerzális szoftvermodulokat biztosít számos tipikus bioinformatikai feladathoz. Ez megkönnyíti a nukleotid- és aminosav-szekvenciák manipulálására szolgáló szkriptek és csővezetékek írását , az adatbázisokhoz való hozzáférést különféle biológiai adattárolási formátumok használatával, az eredmények végrehajtását és elemzését különféle bioinformatikai programokban, például BLAST , ClustalW , T-COFFEE ( tcoffee . ) , HMMER és mások.

Általában a BioPerl modulok lehetővé teszik a következőket:

Példa a GenBank (távoli adatbázis) elérésére egy szekvencia lekéréséhez:

#!/usr/bin/perl -w Bio::DB::GenBank használata ; my $db_obj = Bio::DB::GenBank -> new ; # Ez az objektum tud beszélni a GenBankkal én $seq_obj ; $seq_obj = $db_obj -> get_Seq_by_acc ( 'J00522' ); # a hozzáférési szám használatával $seq_obj = $db_obj -> get_Seq_by_version ( 'J00522.1' ); # Accession.version $seq_obj = $db_obj -> get_Seq_by_gi ( '25829' ); # GI szám print $seq_obj -> display_id (), "\n" ; # print ember által olvasható sorozatazonosító print $seq_obj -> desc (), "\n" ; # nyomtatási sorrend leírása print $seq_obj -> seq (), "\n" ; # kimeneti sorrend használja Bio::SeqIO ; my $seqOut = new Bio:: SeqIO ( - format => 'genbank' ); $seqOut -> write_seq ( $seq_obj );
  • Biológiai adatbázis rekordok és fájlok formátumának konvertálása .

Mintakód a formátumok konvertálásához

használja Bio::SeqIO ; my $usage = "all2y.pl informat outfile outfileformat" ; my $informat = shift or die $usage ; my $outfile = shift or die $usage ; my $outformat = shift or die $usage ; my $seqin = Bio::SeqIO -> new ( - fh => * STDIN , - format => $informat , ); my $seqout = Bio::SeqIO -> new ( - file => ">$outfile" , - format => $outformat , ); while ( my $inseq = $seqin -> next_seq ) { $seqout -> write_seq ( $inseq ); }
  • Az egyes sorozatok elemzése.

Statisztikák gyűjtése egy adott sorozathoz

használja Bio::Tools::SeqStats ; my $seq_stats = Bio::Tools::SeqStats -> new ( $seqobj ); # Hivatkozást ad vissza egy kételemű tömbre, amely tartalmazza a my $weight = $seq_stats -> get_mol_wt () sorozat molekulatömegének maximális alsó és legkisebb felső korlátját ; my $monomer_ref = $seq_stats -> count_monomer (); # monomerek (nukleotidok) # Nukleotidszekvenciáknál my $codon_ref = $seq_stats -> count_codons (); # kodonok száma

Alkalmazás

A végfelhasználók általi közvetlen felhasználáson túlmenően [4] a BioPerl számos bioinformatikai eszköz alapja is, többek között:

  • Degenerált alapozóterv [10]
  • Nyilvános adatbázisok lekérdezése [11]
  • Jelenlegi összehasonlító táblázat [12]

A külső fejlesztőktől származó új eszközöket és algoritmusokat gyakran közvetlenül magába a BioPerlbe integrálják:

  • Munka filogenetikus fákkal és egymásba ágyazott taxonokkal [13]
  • FPC webes eszközök [14]

Előnyök

Jelenleg a BioPerl körülbelül 1000 modult tartalmaz. A biológiai szoftvermodulok egyik első tárháza , amely jelentősen megnövelte a bioinformatikai problémák megoldásának kényelmét és gyorsaságát. A BioPerl nagyon könnyen telepíthető Perl modulokkal és rugalmas globális adattárral rendelkezik. A BioPerl jó tesztmodulokat használ számos folyamathoz.

A BioPerl egyik erőssége, hogy lehetővé teszi szekvenciák kinyerését mindenféle forrásból: fájlokból, távoli biológiai adatbázisokból ( GenBank , SwissProt/UniProt , GenPept , EMBL , SeqHound , Entrez Gene és RefSeq ), helyi adatbázisokból, ezektől függetlenül formátum.

Hátrányok

A BioPerl használatának számos módja van, az egyszerű szkripteléstől a nagyon összetett objektum-orientált programozásig. Ez néha megnehezíti a Perl nyelv megértését. A nagyszámú BioPerl modul közül néhány nem mindig a várt módon működik.

Hasonló könyvtárak más programozási nyelveken

A következő BioPerl-szerű bioinformatikai könyvtárak vannak, amelyeket más programozási nyelveken is implementálnak az Open Bioinformatics Foundation részeként :

Lásd még

Irodalom

Jegyzetek

  1. Stajich, JE; Block, D.; Boulez, K.; Brenner, S .; Chervitz, S.; Dagdigian, C.; Fuellen, G.; Gilbert, J.; Korf, I.; Lapp, H.; Lehvaslaiho, H.; Matsalla, C.; Mungall, CJ; Osborne, B. I.; Pocock, M. R.; Schattner, P.; Senger, M.; Stein, L. D .; Stupka, E.; Wilkinson, M. D.; Birney, E. (2002). „A BioPerl eszköztár: Perl modulok az élettudományokhoz” . Genomkutatás . 12 (10): 1611-1618. DOI : 10.1101/gr.361602 . PMC  187536 . PMID  12368254 .
  2. Archivált másolat . Hozzáférés időpontja: 2007. január 21. Az eredetiből archiválva : 2007. február 2..
  3. Lincoln Stein (1996). „Hogyan mentette meg Perl az emberi genom projektet ” A Perl Journal . 1 (2). Archiválva az eredetiből , ekkor: 2007-02-02 . Letöltve: 2009-02-25 .
  4. Módszerek a közelmúltbeli szegmentális és génduplikációk azonosítására és feltérképezésére eukarióta genomokban // Gene Mapping, Discovery, and Expression . - Totowa, NJ: Humana Press, 2006. - Vol. 338. - P. 9–20. - ISBN 978-1-59745-097-3 . - doi : 10.1385/1-59745-097-9:9 .
  5. Pan, X.; Stein, L .; Brendel, V. (2005). SynBrowse: Szintén böngésző összehasonlító szekvenciaelemzéshez. bioinformatika . 21 (17): 3461-3468. DOI : 10.1093/bioinformatika/bti555 . PMID  15994196 .
  6. Shah, S. P.; McVicker, G. P.; MacKworth, A. K.; Rogic, S.; Ouellette, BFF (2003). „GeneComber: A gén-előrejelző programok kimeneteinek kombinálása a jobb eredmények érdekében”. bioinformatika . 19 (10): 1296-1297. doi : 10.1093/bioinformatika/ btg139 . PMID 12835277 . 
  7. Lenhard, B.; Wasserman, W. W. (2002). „TFBS: Számítási keretrendszer a transzkripciós faktor kötőhely elemzéséhez” . bioinformatika . 18 (8): 1135-1136. DOI : 10.1093/bioinformatika/18.8.1135 . PMID  12176838 .
  8. Huang, J.; Gutteridge, A.; Honda, W.; Kanehisa, M. (2006). „MIMOX: Egy webes eszköz fágmegjelenítés alapú epitóptérképezéshez” . BMC Bioinformatika . 7 : 451. DOI : 10.1186/1471-2105-7-451 . PMC  1618411 . PMID  17038191 .
  9. Catanho, M.; Mascarenhas, D.; Degrave, W.; De Miranda, AB ?L. (2006). BioParser. Alkalmazott bioinformatika . 5 (1):49-53. DOI : 10.2165/00822942-200605010-00007 . PMID  16539538 .
  10. Wei, X.; Kuhn, D. N.; Narasimhan, G. (2003). „Degenerált primer tervezés klaszterezés révén”. Eljárás. IEEE Computer Society Bioinformatikai Konferencia . 2 , 75-83. PMID  16452781 .
  11. Croce, O.; Lamarre, M. L.; Christen, R. (2006). „Lekérdezés nyilvános adatbázisokból sorozatokhoz a jellemzősorokban található összetett kulcsszavak használatával” . BMC Bioinformatika . 7:45 DOI : 10.1186/ 1471-2105-7-45 . PMC  1403806 . PMID  16441875 .
  12. Landsteiner, B.R.; Olson, M. R.; Rutherford, R. (2005). „A jelenlegi összehasonlító táblázat (CCT) automatizálja a dinamikus biológiai adatbázisok testreszabott keresését” . Nukleinsav kutatás . 33 (Webszerver probléma): W770-W773. doi : 10.1093/nar/ gki432 . PMC 1160193 . PMID 15980582 .  
  13. Llabres, M.; Rocha, J.; Rossello, F.; Valiente, G. (2006). „Két filogenetikai fa ősi kompatibilitásáról a beágyazott taxonokkal.” Journal of Mathematical Biology . 53 (3): 340-364. arXiv : cs/0505086 . DOI : 10.1007/s00285-006-0011-4 . PMID  16823581 .
  14. Pampanwar, V.; Engler, F.; Hatfield, J.; Blundy, S.; Gupta, G.; Soderlund, C. (2005). "FPC webeszközök rizshez, kukoricához és forgalmazáshoz" . Növényélettan . 138 (1): 116-126. DOI : 10.1104/pp.104.056291 . PMC  1104167 . PMID  15888684 .