在 Snakemake 脚本中使用 argparse
Use of argparse in Snakemake script
是否可以将自定义命令行参数传递给 snakemake
脚本?我试过了,但是用 argparse
执行 Snakefile 会导致错误 snakemake: error: unrecognized arguments: -zz
。下面是一个示例脚本。
import argparse
def get_args():
parser = argparse.ArgumentParser(description='Compares Illumina and 10x VCFs using RTG vcfeval')
# required main arguments
parser.add_argument('-zz', metavar='--filename', dest='fn', help='Filename', required=True)
# parse arguments
args = parser.parse_args()
fn = args.fn
return fn
fn = get_args()
rule test_1:
input:
fn + "/example.txt"
shell:
"echo Using file {input}"
从命令行传递参数是 possible using --config
。例如:
snakemake --config zz="filename"
在snakefile脚本中,可以这样使用:
rule test_1:
input:
fn + config['zz']
shell:
"echo Using file {input}"
See the doc 了解更多信息。
是否可以将自定义命令行参数传递给 snakemake
脚本?我试过了,但是用 argparse
执行 Snakefile 会导致错误 snakemake: error: unrecognized arguments: -zz
。下面是一个示例脚本。
import argparse
def get_args():
parser = argparse.ArgumentParser(description='Compares Illumina and 10x VCFs using RTG vcfeval')
# required main arguments
parser.add_argument('-zz', metavar='--filename', dest='fn', help='Filename', required=True)
# parse arguments
args = parser.parse_args()
fn = args.fn
return fn
fn = get_args()
rule test_1:
input:
fn + "/example.txt"
shell:
"echo Using file {input}"
从命令行传递参数是 possible using --config
。例如:
snakemake --config zz="filename"
在snakefile脚本中,可以这样使用:
rule test_1:
input:
fn + config['zz']
shell:
"echo Using file {input}"
See the doc 了解更多信息。