Snakemake 不执行 bash 命令
Snakemake don't execute bash command
我正在尝试 运行 Snakemake 中的一个小管道,用于软件过滤来自 RNA-seq 的文件中的良好读取。
这是我的代码:
SAMPLES = ['ZN21_S1', 'ZN22_S2','ZN27_S3', 'ZN28_S4', 'ZN29_S5' ,'ZN30_S6']
rule all:
input:
expand("SVA-{sample}_L001_R{read_no}.fastq.gz", sample=SAMPLES, read_no=['1', '2'])
rule fastp:
input:
reads1="SVA-{sample}_L001_R1.fastq.gz",
reads2="SVA-{sample}_L001_R2.fastq.gz"
output:
reads1out="out/SVA-{sample}_L001_R1.fastq.gz.good",
reads2out="out/SVA-{sample}_L001_R2.fastq.gz.good"
shell:
"fastp -i {input.reads1} -I {input.reads2} -o {output.reads1out} -O {output.reads2out}"
所有样本(在符号 link 中)都在同一个文件夹中,我只收到消息 "Nothing to be done"。
我没看到什么?
在您的示例中,rule all
中的目标文件应该与 rule fastp
的输出文件匹配,而不是当前设置中的输入文件。根据您的代码,rule all
中的目标文件已经存在,因此在执行它时出现消息 Nothing to be done
。
rule all:
input:
expand("out/SVA-{sample}_L001_R{read_no}.fastq.gz.good", sample=SAMPLES, read_no=['1', '2'])
我正在尝试 运行 Snakemake 中的一个小管道,用于软件过滤来自 RNA-seq 的文件中的良好读取。
这是我的代码:
SAMPLES = ['ZN21_S1', 'ZN22_S2','ZN27_S3', 'ZN28_S4', 'ZN29_S5' ,'ZN30_S6']
rule all:
input:
expand("SVA-{sample}_L001_R{read_no}.fastq.gz", sample=SAMPLES, read_no=['1', '2'])
rule fastp:
input:
reads1="SVA-{sample}_L001_R1.fastq.gz",
reads2="SVA-{sample}_L001_R2.fastq.gz"
output:
reads1out="out/SVA-{sample}_L001_R1.fastq.gz.good",
reads2out="out/SVA-{sample}_L001_R2.fastq.gz.good"
shell:
"fastp -i {input.reads1} -I {input.reads2} -o {output.reads1out} -O {output.reads2out}"
所有样本(在符号 link 中)都在同一个文件夹中,我只收到消息 "Nothing to be done"。 我没看到什么?
在您的示例中,rule all
中的目标文件应该与 rule fastp
的输出文件匹配,而不是当前设置中的输入文件。根据您的代码,rule all
中的目标文件已经存在,因此在执行它时出现消息 Nothing to be done
。
rule all:
input:
expand("out/SVA-{sample}_L001_R{read_no}.fastq.gz.good", sample=SAMPLES, read_no=['1', '2'])