Я пытаюсь создать конвейер, в котором небольшая цепочка правил выполняется для динамического числа файлов, выводимых более ранним правилом с использованием вывода. Однако я получаю следующую ошибку: «Подстановочные знаки во входных файлах не могут быть определены из выходных файлов:».
Это говорит мне о том, что то, что я пытаюсь сделать, в настоящее время не поддерживается. Вот псевдо-пример того, что я пытаюсь сделать:
rule a:
input: "my static file.txt"
output: dynamic('my/path/{id}.txt')
rule b:
input: dynamic('my/path/{id}.txt')
output: dynamic('my/path/{id}.reprocessed.txt')
rule c:
input: dynamic('my/path/{id}.reprocessed.txt')
output: 'gather.txt'
Запуск snakemake с
rule all:
input: dynamic('my/path/{id}.txt')
Работает без проблем, но когда я запускаю snakemake с помощью:
rule all:
input: dynamic('my/path/{id}.reprocessed.txt')
Я получаю сообщение об ошибке: «Подстановочные знаки во входных файлах не могут быть определены из выходных файлов:»
Эта функция поддерживается? Кто-нибудь успешно сделал такую цепочку? Какие соображения мне нужно принять во внимание?
Спасибо!
Это было решено путем удаления динамического оператора из правила b.
У меня была аналогичная проблема, и я создал два правила: одно с динамическим и одно с нединамическим
возможно ли иметь правило с динамическими и нединамическими выходными файлами?