我在运行一份基因和标记列表的关联。我有一个基因genes = ['gene1', 'gene2', ...]列表和一个字典,其中关键字是基因名称,值是我想要与该基因关联的标记列表,即markers = {'gene1': ['marker1.1', 'marker1.2', ...], 'gene2': ['marker2.1', 'marker2.2', ...], ...}。我有一个规则,可以输出给定基因和标记的文件gene/assoc/marker。
有没有可能同时对genes列表和markers字典进行扩展,从而使正在扩展的基因作为进入字典的关键字?类似于下面的内容:
markers = {
'gene1': ['marker1.1', 'marker1.2', ...],
'gene2': ['marker2.1', 'marker2.2', ...],
...
}
genes = markers.keys()
rule all:
input:
expand('{gene}/assoc/{marker}', gene=genes, marker=markers[current_gene])发布于 2019-12-16 20:07:46
您可以提前使用expand:
gimme_files = []
for marker in markers:
_gimme_per_marker = expand('{gene}/assoc/{marker}', gene=marker, marker=markers[marker])
gimme_files.extend(_gimme_per_marker)
rule all:
input:
gimme_fileshttps://stackoverflow.com/questions/59354427
复制相似问题