--quality=<quality>  Trimming quality [default: 20]
    --adapter=<adapter>  Adapter sequence [default: AGATCGGAAGAGC]
    --path=<path>        Path to cutadapt [default: cutadapt]
    --help               Output this message
    
"""
# Import required modules
import os
from ngs_python.fastq import fastqFind, fastqTrim
from general_python import docopt, toolbox, moab
# Extract and process arguments
args = docopt.docopt(__doc__,version = 'v1')
args['--quality'] = int(args['--quality'])
inDir, inPrefix = os.path.split(args['<inprefix>'])
toolbox.checkArg(args['--path'], 'exc')
# Extract fastq files and generate output file names
read1In, read2In = fastqFind.findFastq(prefix = inPrefix, dirList = [inDir],
    pair = True, gzip = True)
read1Out = args['<outprefix>'] + '.R1.fastq.gz'
read2Out = args['<outprefix>'] + '.R2.fastq.gz'
trimLog = args['<outprefix>'] + '.log'
# Generate and submit trim command
trimCommand = fastqTrim.cutadaptTrimPaired(read1In = read1In,
    read2In = read2In, read1Out = read1Out, read2Out = read2Out,
    quality = args['--quality'], adapter = 'AGATCGGAAGAGC', length = 25,
    path = args['--path']
)
jobID = moab.submitJob(trimCommand, stdout = trimLog, stderr = trimLog)
print jobID
Exemple #2
0
                                              path=paths['cutadapt'],
                                              length=args['--minlength'],
                                              quality=args['--trimqual'])
    # Create QC command
    fastqcCommand = fastqQC.fastQC(inFile=args['trimRead1'],
                                   outDir=args['fastqSampleDir'],
                                   path=paths['fastqc'])
    # Empty read2 file
    args['trimRead2'] = None
# Generate commands to process paired-end FASTQ files
else:
    # Create trim command
    trimReadsCommand = fastqTrim.cutadaptTrimPaired(read1In=args['read1'],
                                                    read2In=args['read2'],
                                                    read1Out=args['trimRead1'],
                                                    read2Out=args['trimRead2'],
                                                    path=paths['cutadapt'],
                                                    length=args['--minlength'],
                                                    quality=args['--trimqual'])
    # Generate QC command
    read1Fastqc = fastqQC.fastQC(inFile=args['trimRead1'],
                                 outDir=args['fastqSampleDir'],
                                 path=paths['fastqc'])
    read2Fastqc = fastqQC.fastQC(inFile=args['trimRead2'],
                                 outDir=args['fastqSampleDir'],
                                 path=paths['fastqc'])
    fastqcCommand = '%s && %s' % (read1Fastqc, read2Fastqc)
# Submit trimming commands
trimReadsJobID = moabJobs.add(command=trimReadsCommand,
                              stdout=args['trimLog'],
                              stderr=args['trimLog'])
    # Create QC command
    fastqcCommand = fastqQC.fastQC(
        inFile = args['trimRead1'], 
        outDir = args['fastqSampleDir'],
        path = paths['fastqc']
    )
    # Empty read2 file
    args['trimRead2'] = None
# Generate commands to process paired-end FASTQ files
else:
    # Create trim command
    trimReadsCommand = fastqTrim.cutadaptTrimPaired(
        read1In = args['read1'],
        read2In = args['read2'],
        read1Out = args['trimRead1'],
        read2Out = args['trimRead2'],
        path = paths['cutadapt'],
        length = args['--minlength'],
        quality = args['--trimqual']
    )
    # Generate QC command
    read1Fastqc = fastqQC.fastQC(
        inFile = args['trimRead1'], 
        outDir = args['fastqSampleDir'],
        path = paths['fastqc']
    )
    read2Fastqc = fastqQC.fastQC(
        inFile = args['trimRead2'],
        outDir = args['fastqSampleDir'],
        path = paths['fastqc']
    )
Exemple #4
0
    
"""
# Import required modules
import os
from ngs_python.fastq import fastqFind, fastqTrim
from general_python import docopt, toolbox, moab
# Extract and process arguments
args = docopt.docopt(__doc__, version='v1')
args['--quality'] = int(args['--quality'])
inDir, inPrefix = os.path.split(args['<inprefix>'])
toolbox.checkArg(args['--path'], 'exc')
# Extract fastq files and generate output file names
read1In, read2In = fastqFind.findFastq(prefix=inPrefix,
                                       dirList=[inDir],
                                       pair=True,
                                       gzip=True)
read1Out = args['<outprefix>'] + '.R1.fastq.gz'
read2Out = args['<outprefix>'] + '.R2.fastq.gz'
trimLog = args['<outprefix>'] + '.log'
# Generate and submit trim command
trimCommand = fastqTrim.cutadaptTrimPaired(read1In=read1In,
                                           read2In=read2In,
                                           read1Out=read1Out,
                                           read2Out=read2Out,
                                           quality=args['--quality'],
                                           adapter='AGATCGGAAGAGC',
                                           length=25,
                                           path=args['--path'])
jobID = moab.submitJob(trimCommand, stdout=trimLog, stderr=trimLog)
print jobID
Exemple #5
0
args['insLog'] = args['bamPrf'] + '.insert.log'
# Generate output files for BED processing
args['bedPrf'] = os.path.join(args['smpBed'], args['name'])
args['intBed'] = args['bedPrf'] + '.initial.bed'
args['intLog'] = args['bedPrf'] + '.bam2bed.log'
args['srtBed'] = args['bedPrf'] + '.bed'
args['bedGrp'] = args['bedPrf'] + '.bedgraph'
args['bedLog'] = args['bedPrf'] + '.bedprocess.log'

# Generate object to store commands
moabJobs = moab.moabJobs()
# Create trim command and add to job dictionary
trimCommand = fastqTrim.cutadaptTrimPaired(read1In=args['read1'],
                                           read2In=args['read2'],
                                           read1Out=args['trmRd1'],
                                           read2Out=args['trmRd2'],
                                           path=paths['cutadapt'],
                                           length=25,
                                           quality=20,
                                           adapter='CTGTCTCTTATACACATCT')
trimCommandID = moabJobs.add(trimCommand,
                             stdout=args['trmLog'],
                             stderr=args['trmLog'])
# Generate QC commands
read1Fastqc = fastqQC.fastQC(inFile=args['trmRd1'],
                             outDir=args['smpFsq'],
                             path=paths['fastqc'])
read2Fastqc = fastqQC.fastQC(inFile=args['trmRd2'],
                             outDir=args['smpFsq'],
                             path=paths['fastqc'])
# Combine FASTQ QC command and add to job dictionary
fastqcCommand = '%s && %s' % (read1Fastqc, read2Fastqc)