コード例 #1
0
ファイル: mergeBamsE3.py プロジェクト: sirusb/uniformAnalysis
if testOnly:
    ana.dryRun = testOnly

# What step expects:
# Inputs: 2 bam files, pre-registered in the analysis and both keyed as: 'bamRep' + replicateN + '.bam'
# Outputs: 1 merged bam keyed as: 'mergedRep' + replicate1 + 'Rep' +replcicate2 + '.bam'

# set up keys that join inputs through various file forwardings:
bamAkey = 'bamRep' + repA + '.bam'
bamBkey = 'bamRep' + repB + '.bam'
mergedBamKey = 'mergedRep' + repA + 'Rep' + repB + '.bam'

# Establish Inputs for galaxy and nonGalaxy alike
ana.registerFile(bamAkey, 'galaxyInput', galaxyInputBamA)
ana.registerFile(bamBkey, 'galaxyInput', galaxyInputBamB)
nonGalaxyInput1 = ana.nonGalaxyInput(
    bamAkey)  # Registers and returns the outside location
nonGalaxyInput2 = ana.nonGalaxyInput(
    bamBkey)  # Need to register these to ensure nonGalOut naming

# outputs:
ana.registerFile(mergedBamKey, 'galaxyOutput', galaxyOutMergedBam)
resultsDir = ana.resultsDir(
    galaxyPath)  # prefers nonGalaxyInput location over settings loc
ana.createOutFile(mergedBamKey,'nonGalaxyOutput','%s_%s_merged',ext='bam', \
                  input1=bamAkey, input2=bamBkey)

# Establish step and run it:
step = MergeBamStep(ana, repA, repB)
sys.exit(step.run())
コード例 #2
0
# Outputs: 1 interim Corr       file, keyed as: 'strandCorr' + suffix +    '.txt'
#          1 target json        file, keyed as: 'bamEvaluate' + suffix +   '.json'

# TODO: Does a galaxy user really want the sample bam?
    
# set up keys that join inputs through various file forwardings:
bamInputKey   = 'alignmentRep'   + repNo +    '.bam'

# Establish Inputs for galaxy and nonGalaxy alike
ana.registerFile(bamInputKey,'galaxyInput', galaxyInputFile)
nonGalaxyInput  = ana.nonGalaxyInput(bamInputKey)  # Registers and returns the outside location
suffix = 'Rep' + repNo
if nonGalaxyInput.lower().find('_star') != -1:
    suffix += 'ByStar'
elif nonGalaxyInput.find('_tophat') != -1:
    suffix += 'ByTophat'
elif nonGalaxyInput.lower().find('_bwa') != -1:
    suffix += 'ByBwa'
bamSampleKey  = 'alignment'      + suffix + '_5M.bam'
bamEvalKey    = 'bamEvaluate'    + suffix +    '.json'

# outputs:
ana.registerFile( bamEvalKey,     'galaxyOutput',galaxyOutBamEval)
resultsDir  = ana.resultsDir(galaxyPath) # prefers nonGalaxyInput location over settings loc
ana.createOutFile(bamEvalKey,  'nonGalaxyOutput','%s_bamEval',ext='json')

# Establish step and run it:
step = BamEvaluateStep(ana,repNo,suffix)
sys.exit( step.run() )