美文网首页
snakemake 学习(0)

snakemake 学习(0)

作者: BioLearner | 来源:发表于2019-05-30 21:39 被阅读0次

    1. snkemake介绍

    Snakemake工作流管理系统是一种创建可重复和可扩展的数据分析的工具。工作流程通过人类可读的基于Python的语言进行描述。它们可以无缝扩展到服务器,集群,网格和云环境,而无需修改工作流定义。最后,Snakemake工作流程可能需要描述所需的软件,这些软件将自动部署到任何执行环境。

    2. 快速示例

    Snakemake工作流本质上是由声明性代码扩展的Python脚本,用于定义规则。规则描述了如何从输入文件创建输出文件

    rule targets:
        input:
            "plots/dataset1.pdf",
            "plots/dataset2.pdf"
    
    rule plot:
        input:
            "raw/{dataset}.csv"
        output:
            "plots/{dataset}.pdf"
        shell:
            "somecommand {input} {output}"
    
    • 与GNU Make类似,您可以根据顶部的伪规则指定目标。
    • 对于每个目标文件和中间文件,您可以创建规则,以定义如何从输入文件创建它们。
    • Snakemake通过匹配文件名来确定规则依赖性。
    • 输入和输出文件可以包含多个命名通配符。
    • 规则可以使用shell命令,普通Python代码或外部Python或R脚本来从输入文件创建输出文件。
    • Snakemake工作流程可以在工作站集群网格云中轻松执行,无需修改。作业调度可以受到任意资源的约束,例如可用的CPU内核,内存或GPU。
    • Snakemake可以使用CondaSingularity自动部署工作流所需的软件依赖性。
    • Snakemake可以使用Amazon S3,Google Storage,Dropbox,FTP,WebDAV,SFTP和iRODS访问输入或输出文件,并通过HTTP和HTTPS进一步访问输入文件。

    相关文章

      网友评论

          本文标题:snakemake 学习(0)

          本文链接:https://www.haomeiwen.com/subject/gwfdzqtx.html