INNER CODE UNIT · Python
blueprint_legacy
nloyfer/wgbs_tools · src/python/bam2pat.py:113
def blueprint_legacy(genome, region, paired_end):
if not op.isfile(genome.genome_path):
eprint(f'[ wt bam2pat ] Error: not genome reference fasta file: {genome.genome_path}')
raise IllegalArgumentError('Failed')
chrom = region
if ':' in region:
chrom = region[:region.find(':')]
# find offset per chrome - how many sites comes before this chromosome
cf = genome.get_chrom_cpg_size_table()
cf['size'] = [0] + list(np.cumsum(cf['size']))[:-1]
chr_offset = cf.set_index('chr').to_dict()['size']
bppatter_tool = patter_tool.replace('/patter', '/blueprint/patter')
patter_cmd = f' | {bppatter_tool} {genome.genome_path} {chr_offset[chrom]} '
patter_cmd += ' --blueprint'
match_cmd = f' | {match_maker_tool} --drop_singles ' if paired_end else ''
return patter_cmd, match_cmd