¿Cómo utilizar expandir en snakemake cuando no se desean algunas combinaciones particulares de comodines?

Supongamos que tengo los siguientes archivos, en los cuales quiero aplicar algún procesamiento automáticamente usando snakemake:

test_input_C_1.txt
test_input_B_2.txt
test_input_A_2.txt
test_input_A_1.txt

Los siguientes usos de snakefileexpand para determinar todo el archivo potencial de resultados finales:

rule all:
    input: expand("test_output_{text}_{num}.txt", text=["A", "B", "C"], num=[1, 2])

rule make_output:
    input: "test_input_{text}_{num}.txt"
    output: "test_output_{text}_{num}.txt"
    shell:
        """
        md5sum {input} > {output}
        """

Ejecutar el archivo de serpiente anterior da como resultado el siguiente error:

MissingInputException in line 4 of /tmp/Snakefile:
Missing input files for rule make_output:
test_input_B_1.txt

La razón de ese error es queexpand usositertools.product debajo del capó para generar las combinaciones de comodines, algunas de las cuales corresponden a archivos faltantes.

¿Cómo filtrar las combinaciones de comodines no deseadas?

Respuestas a la pregunta(1)

Su respuesta a la pregunta