Mercurial > repos > portiahollyoak > breakdancer_max
view create_config_file.py @ 3:8fee2dac93a4 draft
planemo upload for repository https://github.com/portiahollyoak/Tools commit f09b05c40adb6e529fc461466ee67bf41c3a552f
author | portiahollyoak |
---|---|
date | Mon, 23 May 2016 05:19:22 -0400 |
parents | f65530d07350 |
children |
line wrap: on
line source
import argparse description = ("This script will create a configuration file for samples to be run in Breakdancer." "If pooled analysis desired, only one config file needed for all samples." "Otherwise, individual analysis requires individual config files for each sample.") parser = argparse.ArgumentParser() parser.add_argument("--input_file", nargs="*", help="One or more alignment files") parser.add_argument("--mean", nargs="+", help="Mean insert size") parser.add_argument("--std_dev", nargs="+", help="The standard deviation of insert size") parser.add_argument("--read_length", nargs="+", help="Average read length") parser.add_argument("--sample_name", nargs="+", help="Sample name") parser.add_argument("--output_config_file", help="Name of the output config file") args = parser.parse_args() template = "map:{input_file}\tmean:{mean}\tstd:{std_dev}\treadlen:{read_length}\tsample:{sample_name}\texe:samtools view\n" with open(args.output_config_file, "w") as output: for input_file, mean, std_dev, read_length, sample_name in zip(args.input_file, args.mean, args.std_dev, args.read_length, args.sample_name): config_line = template.format(input_file=input_file, mean=mean, std_dev=std_dev, read_length=read_length, sample_name=sample_name) output.write(config_line)