snakemake

Sagteware kiekie:
snakemake
Sagteware besonderhede:
Weergawe: 2.5
Upload datum: 20 Feb 15
Ontwikkelaar: Johannes Koster
Lisensie: Gratis
Populariteit: 10

Rating: 4.0/5 (Total Votes: 1)

Bou stelsels soos make word dikwels gebruik ingewikkelde werkstromen, bv te skep in bioinformatika & nbsp;. snakemake ten doel om die kompleksiteit van die skep van werkstromen te verminder deur die verskaffing van 'n skoon en moderne domein spesifieke spesifikasie taal (DSL) in python styl, saam met 'n vinnige en gerieflike uitvoering omgewing.
Installasie
- Op Ubuntu 12.04, kan jy die Debian pakket python3-snakemake beskikbaar installeer in ons Launchpad repository.
- Op ander stelsels, wat jy nodig het 'n werkende installasie van 'n afgestorwene> = 3.2. Afhangende van jou stelsel, kan jy dan installeer snakemake deur die uitreiking van óf easy_install snakemake of easy_install3 snakemake in die command line. As jy nie administrateur priviledges, het 'n blik op die argument --user van easy_install.
- Ten slotte, snakemake kan met die hand geïnstalleer word deur die aflaai van die bron-kode argief van pypi.
Gebruik
Snakemake bied 'n eenvoudige DSL werkstromen dat lêers in verskeie daaropvolgende stappe te beskryf:
monsters = ["01", "02"]
# Opsioneel definieer 'n gids waar die werk gedoen moet word.
workdir: "pad / na / workdir"
# Soortgelyke te maak, dummy reëls wat optree as bou teikens definieer.
heers al:
& Nbsp; insette: "diffexpr.tsv", ...
heers op te som:
& Nbsp; insette: "{monster} .mapped.bam" .format (monster = s) vir s in monsters
& Nbsp; afvoer: "diffexpr.tsv"
& Nbsp; voer:
& Nbsp; # ... 'n mate van python kode die uitvoer van die invoer lêers te produseer
& Nbsp; # bijv. toegang invoer lêers deur indeks
& Nbsp; insette [1]
& Nbsp; # toegang wildcard waardes
& Nbsp; wildcards.sample
& Nbsp; # maklik loop tolk opdragte outomaties met behulp van jou standaard dop terwyl hulle direkte toegang
& Nbsp; # aan alle plaaslike en globale veranderlikes via die formaat minilanguage
& Nbsp; drade = 6
& Nbsp; dop ("somecommand --threads {drade} {insette [0]} {uitset [0]}")
heers map_reads:
& Nbsp; # toewys name vir toevoer en afvoer lêers
& Nbsp; insette: lees = "{monster} .fastq", hg19 = "hg19.fasta"
& Nbsp; # merk uitvoer lêers skryf-beskerm na die skepping te wees
& Nbsp; afvoer: gekarteer = beskerm ("{monster} .mapped.sai")
& Nbsp; # Optionally definieer boodskappe wat vertoon word in plaas van generiese reël beskrywing op die uitvoering van die reël:
& Nbsp; n boodskap: "Mapping lees te {input.hg19}"
& Nbsp; drade: 8
& Nbsp; dop:
& Nbsp; # direk verskaf tolk opdragte (in 'n multi of enkele lyn string) indien luislang sintaksis is nie nodig nie.
& Nbsp; # weer kan globale en plaaslike veranderlikes verkry word via die formaat minilanguage.
& Nbsp; # Verdere, die aantal drade wat gebruik word deur die reël kan gespesifiseer word. Die snakemake skeduleerder verseker dat die reël is hardloop met die gespesifiseerde aantal drade as genoeg cores word via die -J command line opsie beskikbaar gestel.
& Nbsp; "" "
& Nbsp; BWA ALN t {drade} {input.hg19} {input.reads}> {output.mapped}
& Nbsp; n paar --other --command
& Nbsp; "" "
'N "Snakefile" met so 'n sintaksis, kan die workflow uitgevoer word (bv die gebruik van tot 6 parallelle prosesse) deur LOOTS:
& Nbsp; snakemake -j6 -s Snakefile
Vir meer besonderhede, sien asseblief die Tutorial

Eienskappe :.

  • Definieer werkstromen in 'n tekstuele manier deur die skryf van reëls hoe uitset te skep lêers van invoer lêers in 'n eenvoudige slang gebaseer sintaksis. In teenstelling met GNU maak (wat hoofsaaklik 'n bou-stelsel), snakemake laat 'n reël verskeie uitset lêers te skep.
  • Snakemake bereken outomaties wat reëls moet uitgevoer word om die verlangde uitset te skep.
  • Beide dop gebaseerde reëls asook volledige luislang sintaksis binne 'n reël word ondersteun. Shell opdragte direkte toegang tot al die plaaslike en globale luislang veranderlikes.
  • Soos GNU maak, kan snakemake skeduleer parallel reël teregstellings waar moontlik. Verder, kan onder reël parallelliseren gekombineer word met intra reël parallelliseren (bv drade) en snakemake verseker dat die aantal gebruikte cores nie die gegewe waarde oorskry nie.
  • Lêers kan gemerk word as tydelike (dws hulle kan een keer verwyder nie meer nodig nie) of beskerm (dws hulle word skryf beskerm sal na die skepping).
  • Invoer en uitvoer lêers kan verskeie vernoem wildcards bevat.
  • Invoer en uitvoer lêers kan genoem word, sodat dit aan te spreek in die reël word handig.
  • 'n kaart-verminder soos funksies word bereik deur die gebruik van die maklike luislang lys begrip sintaksis te lees.
  • As 'n eksperimentele funksie, snakemake kan loop op 'n cluster deur die spesifiseer van die submit opdrag (bv qsub vir Sun Grid Engine).

Vereistes :

  • Python

Soortgelyke sagteware

seriesoftubes
seriesoftubes

20 Feb 15

TRMiner
TRMiner

14 Apr 15

checkmyclones
checkmyclones

11 May 15

tigreBrowser
tigreBrowser

11 May 15

Ander sagteware ontwikkelaar Johannes Koster

TRMiner
TRMiner

14 Apr 15

Kommentaar te snakemake

Kommentaar nie gevind
Kommentaar te lewer
Draai op die foto!