snakemake

Software kuvakaappaus:
snakemake
Ohjelmiston tiedot:
Versio: 2.5
Lähetyksen päivämäärä: 20 Feb 15
Kehittäjä: Johannes Koster
Lupa: Vapaa
Suosio: 10

Rating: 4.0/5 (Total Votes: 1)

Build-järjestelmissä, kuten make käytetään usein luomaan monimutkaisia ​​työnkulkuja, esim bioinformatiikan. & nbsp; snakemake pyritään vähentämään monimutkaisuutta luoda työnkulkuja tarjoamalla puhdas ja moderni verkkotunnuksen erittely, kieli (DSL) Python tyyliin yhdessä nopean ja mukavan suoritusympäristön.
Asennus
- Ubuntu 12.04, voit asentaa Debian python3-snakemake saatavilla meidän Launchpad arkistoon.
- Muissa järjestelmissä tarvitset työ- asennus Python> = 3.2. Järjestelmästä riippuen, voit asentaa snakemake antamalla joko easy_install snakemake tai easy_install3 snakemake komentorivillä. Jos sinulla ei ole järjestelmänvalvojan etuoikeuksia, vilkaista väite --user of easy_install.
- Lopuksi snakemake voidaan asentaa manuaalisesti lataamalla lähdekoodin arkisto pypi.
Käyttö
Snakemake tarjoaa yksinkertaisen DSL kuvaamaan työnkulkujen luoda tiedostoja useassa peräkkäisessä vaiheessa:
näytteitä = ["01", "02"]
# Valinnaisesti määrittää hakemiston, jossa työ tehdään.
workdir: "path / to / workdir"
# Samanlainen tehdä, määritellä dummy sääntöjä, jotka toimivat rakentaa tavoitteita.
sulje kaikki:
& Nbsp; input: "diffexpr.tsv", ...
sääntö Tiivistetysti:
& Nbsp; input: "{näyte} .mapped.bam" .format (näyte = t) s näytteissä
& Nbsp; lähtö: "diffexpr.tsv"
& Nbsp; ajaa:
& Nbsp; # ... antaa joitakin python koodia tuottaa lähdön lähdetiedostosta
& Nbsp; # esim. pääsy input tiedostoja indeksi
& Nbsp; input [1]
& Nbsp; # pääsy jokerina arvot
& Nbsp; wildcards.sample
& Nbsp; # helposti ajaa komentotulkkikomentoja automaattisesti oletusarvoisella kuori taas on suora yhteys
& Nbsp; # kaikkia paikallisia ja globaaleja muuttujia kautta muodossa minilanguage
& Nbsp; kierteet = 6
& Nbsp; kuori ("somecommand --threads {viestiketjut} {input [0]} {lähtö [0]}")
sääntö map_reads:
& Nbsp; # antaa nimet tulon ja lähdön tiedostoja
& Nbsp; input: lukee = "{näyte} .fastq", hg19 = "hg19.fasta"
& Nbsp; # merkki tuotannon tiedostoja olla kirjoitussuojattu luomisen jälkeen
& Nbsp; lähtö: kartoitettu = suojattu ("{näyte} .mapped.sai")
& Nbsp; # Vaihtoehtoisesti määritellä virheilmoitukset jotka sijaan geneeristen säännön kuvausta suorittamisen sääntö:
& Nbsp; viesti: "Mapping lukee {input.hg19}"
& Nbsp; viestiketjut: 8
& Nbsp; kuori:
& Nbsp; # suoraan tarjota komentotulkkikomentoja (usean tai yhden rivi merkkijono) jos python syntaksi ei tarvita.
& Nbsp; # jälleen, globaali ja paikalliset muuttujat pääsee muodossa minilanguage.
& Nbsp; # Edelleen säikeiden määrä käyttämä sääntö voidaan määrittää. Snakemake Scheduler varmistaa, että sääntö on ajaa tietty määrä säikeitä jos tarpeeksi ytimet ovat saatavilla -j komentorivioptiona.
& Nbsp; "" "
& Nbsp; bwa aln -t {viestiketjut} {input.hg19} {input.reads}> {output.mapped}
& Nbsp; jotkut --Muut --command
& Nbsp; "" "
Koska "Snakefile" tällaisen syntaksi, työnkulku voidaan suorittaa (esimerkiksi käyttämällä jopa 6 rinnakkaiset prosessit) mukaan issueing:
& Nbsp; snakemake -j6 -S Snakefile
Lisätietoja katso opetusohjelma.

Ominaisuudet :

  • Määritä työnkulkujen sanallisesti tavalla kirjoittamalla sääntöjä miten luoda lähtö tiedostoja input tiedostoja yksinkertaisesti python perustuu syntaksin. Toisin kuin GNU tehdä (joka on ensisijaisesti rakentaa järjestelmä), snakemake mahdollistaa sääntö luoda useita tuotannon tiedostoja.
  • Snakemake laskee automaattisesti, mitä sääntöjä on toteutettu luoda halutun tehon.
  • Sekä kuori perustuu sääntöihin sekä koko python syntaksin sisällä sääntö on tuettu. Shell komennot on suora pääsy kaikkiin paikallisen ja globaalin python muuttujia.
  • GNU tehdä, snakemake voi ajoittaa rinnakkain sääntö teloituksia, jos mahdollista. Lisäksi muun säännön parallelization voidaan yhdistää sisäisen säännön parallelization (esim kierteet) ja snakemake varmistaa, että määrä käytettyjen sydämiä ei ylitä annettu arvo.
  • Tiedostot voidaan merkitä tilapäistä (eli ne voidaan poistaa, kun ei enää tarvita) tai suojattu (eli ne kirjoitussuojaa luomisen jälkeen).
  • Tulo- ja lähtö-tiedostot voivat sisältää useita nimetty jokerimerkkejä.
  • Tulo ja lähtö tiedostoja voidaan nimetä niin, että puututaan ne sisällä sääntö tulee kätevä.
  • kartta-vähentää suoritin saavutetaan käyttämällä helppolukuisia python lista ymmärtäminen syntaksi.
  • Koska kokeellinen ominaisuus, snakemake voi ajaa klusterin määrittämällä lähetä komento (esim qsub Sun Grid Engine).

Vaatimukset :

  • Python

Vastaavia ohjelmistoja

PySCeS
PySCeS

14 Apr 15

VULCAN
VULCAN

20 Feb 15

MACS2
MACS2

20 Feb 15

picme
picme

11 May 15

Muu ohjelmistojen kehittäjä Johannes Koster

TRMiner
TRMiner

14 Apr 15

Kommentit snakemake

Kommentteja ei löytynyt
Lisää kommentti
Ota kuvia!