如何解决Snakemake:如果规则的输出文件已经生成了会怎样?
我是snakemake的新手,我从github下载了一个使用snakemake的包,我成功运行了一次,但是由于我的数据很大,整个过程花了27个小时,但是大约99个小时其中 % 用于执行 1 条规则,因此当该规则的输出文件已经存在时,我想跳过该特定规则。如果该规则的输出文件列在 rule all 部分中,snakemake 是否会自动跳过该规则?否则,我该怎么做才能跳过它?
解决方法
根据您的描述,是的,如果其输出已经存在并且输出比其输入新,snakemake 将跳过该长时间运行的规则。如果不满足第二个条件,snakemake 将再次运行规则。这是有道理的,对吧?如果输入已更新,则输出已过时,需要重做。请注意,snakemake 检查的是时间戳,而不是文件的内容。
在实践中,您可以使用 --dry-run
选项执行 snakemake 以确认它不会再次运行该规则。另请查看 --summary
选项,了解为什么 snakemake 想要执行某些规则并跳过其他规则。
(有疑问,复制长期运行规则的输出,以防万一...)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。