BioPerl | |
---|---|
Típusú | Bioinformatika |
Beírva | Perl |
Operációs rendszer | Linux , Mac OS X , Microsoft Windows |
Első kiadás | 2002. június 11 |
legújabb verzió | 1.7.8 (2021. február 3. ) |
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.
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.
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.
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 );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 ); }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ámaA 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:
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:
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.
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.
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 :
Perl | |
---|---|
Emberek |
|
Dolgok | |
Keretrendszerek |
|
|