カスタムPerlスクリプトを実行できるSnakefileにルールを書き込もうとしています。 2つの入力ファイルと1つの出力ファイルがあります。私は様々なファイルのスクリプトを実行したいので、入力ファイルと出力ファイルにはワイルドカードが含まれています。しかし、私が異なる入出力ファイルを生成するために展開すると、perlスクリプトは可能なすべての入力ファイルを入力として受け取り、1つずつ進めたいと考えています。私は、perlに入力ファイルを1つずつ「食べさせる」ために何をすべきですか?これは私のコードです:あなたのルールはすべてのファイルを実行したい理由snakefileのperlスクリプトにワイルドカード引数を渡す方法は?
DOMAINS= ["Metallophos", "PP2C", "Y_phosphatase"]
SUPERGROUPS=["2supergroups","5supergroups"]
rule add_supergroups:
input:
newick=expand("data/{domain}/{supergroup}/RAxML_bipartitionsBranchLabels.bbhlist.txt.{domain}.fa.aligned.rp.me-25.id.phylip",domain=DOMAINS, supergroup=SUPERGROUPS),
sup="data/species.v3.1.1.supergroups.txt"
output:
expand("results/{domain}/{supergroup}/RAxML_bipartitionsBranchLabels.bbhlist.txt.{domain}.fa.aligned.rp.me-25.id.phylip.supergroups", domain=DOMAINS, supergroup=SUPERGROUPS)
shell:
"perl scripts/change_newick.pl {input.sup} {input.newick} {output}"
ヘヘ、あなたは明らかに;-) – rioualen
私よりも速かった私は、2人の新しいユーザーによる2つの良い答えがあることを好みます。がんばり続ける。 :-) – simbabque
私たちはフランス語の "Snakemakeコミュニティ"の両方に参加しています:) – rioualen