分支的实现
在进行snakemake分析时,所有的参数都是通过 -C 进行传递的,例如 -C S=”string” 则在smk中可以通过使用 config[‘S’] 调用相关参数完成参数传递。 -C 传递的值统一保存在字典 “config” 中。
1 | -C \ |
向流程传递参数
数据的二次加工
snakemake本身是基于python语法解析的,因此整个snakemake中是支持python语法进行数据处理的。借助这个特点,我们可以在snakemake中进行一些高级的操作来帮助我们更便捷的进行数据的处理。
比如针对输入文件,生成一些相对复杂的数据结构,实现一些复杂的功能或者业务逻辑
1 | aln_bam = "{0}__{1}/{2}/3.BWA_Aln/{3}__{4}__{5}__{6}_sort.bam".format(product, sample, type, chip, lane, barcode, umi) |
补充日志
补充一个相对完善的流程说明帮助文档
1 | try: |
生成一系列的记录文档,记录分析的相关信息。
1 | # 获取分析日期 |