数据管道语言snakemake的非严格包装。
snakescale的Python项目详细描述
蛇形刻度
数据管道语言snakemake的非严格包装。
❯ pip install 'snakescale[full]'
功能:
- 使用official wrapper repository中的包装器可以让您半路只使用python语法编写规则吗?
- 是否希望仅使用
input
、output
、resources
和params
键完全参数化规则? - 是否要将内置的python类型用作规则的值?
- 是否要将snakemake资源系统用于jvm资源?
- 您想要一个snakemake包装器吗?除了它包装的cli的style之外,它的硬编码要尽可能少? 阅读文档:snakescale.readthedocs.io
- snakescale做到了这一切,并且与conda环境兼容!
示例
fromsnakescaleimportscalerulebedtools_subtract:input:a='data/a.bed',b='data/b.bed'output:'data/result.bed'params:no_name_check=True,g='data/ref.genome'wrapper:scale('bedtools','subtract')
在引擎盖下执行此操作:
❯ bedtools subtract -a data/a.bed -b data/b.bed -nonamecheck -g data/ref.genome > data/result.bed
通过调用以下命令:
❯ snakemake -F --use-conda Building DAG of jobs... Creating conda environment .../bedtools/subtract/environment.yaml... Downloading remote packages. Environment for .../bedtools/subtract/environment.yaml created (location: .snakemake/conda/32f9fcde) Using shell: /usr/local/bin/bash Provided cores: 1 Rules claiming more threads will be scaled down. Job counts: count jobs1 bedtools_subtract 1[Fri Dec 2813:13:47 2018] rule bedtools_subtract: input: data/a.bed, data/b.bed output: data/result.bed jobid: 0 Activating conda environment: .snakemake/conda/32f9fcde [Fri Dec 2813:13:47 2018] Finished job 0. 1 of 1 steps (100%)done Complete log: .snakemake/log/2018-12-28T131312.471617.snakemake.log