许多输入到一个输出,在输入文件中访问通配符

时间:2017-09-08 16:32:18

标签: snakemake

道歉,如果这是一个简单的问题,我在文档中找不到任何内容。

目前我的工作流程看起来像这样。我在本工作流程中创建了许多输入文件,并对其进行了总结。

有没有办法避免这个手动正则表达式步骤来解析文件名中的通配符?

我想过"扩展" config["chromosomes"]rule report: output: table="output/mendel_errors.txt" input: files=expand("output/{chrom}/{cross}.in", chrom=config["chromosomes"], cross=cross_ids) params: req="h_vmem=4G", run: df = pd.DataFrame(index=range(len(input.files), columns=["stat", "chrom", "cross"]) for i, fn in enumerate(input.files): # open fn / make calculations etc // stat = # manual regex of filename to get chrom cross // chrom, cross = df.loc[i] = stat, chrom, choss ,但不确定是否保证订单顺序。

{{1}}

当这些信息必须在某个环境中时,这似乎有点尴尬。

1 个答案:

答案 0 :(得分:0)

(通过谷歌集团的JohannesKöster)

回答你的问题: 展开使用标准库中的functools.product。因此,你可以写

from functools import product

product(config["chromosomes"], cross_ids)