def main(argv):
    global table_type, region_loc, cell_type, table_loc, perm, build, population
    build = 'hg19'
    cis = True
    population = 'EUR'
    region_loc = '/home/jkb4y/work/data/Region_Lists/hg19/T1D_regions_hg19_05242012_extra.5MB.txt'
    prelude_base = '/home/jkb4y/h4t1/programs/achilleas_plots/gene_prelude.R'
    cell_type = "CD8"
    postlude_folder= '/home/jkb4y/h4t1/programs/achilleas_plots/postludes'
    tablefold = '/home/jkb4y/ubs/work/data/Achilleas/cis-eQTL/'
    table_loc = os.path.join(tablefold,'{0}_cis_eqtls_permwBP_JB_LZ.txt'.format(cell_type))
    table_type = 'perm'
    index_dict, thing = pc_toolbox.create_index_dict(table_loc, table_type)
    perm = True
    achilleas_cell_results = "/home/jkb4y/ubs/work/results/Achilleas/hg19/{0}".format(cell_type)
    genefolder = os.path.join(achilleas_cell_results,'GeneLists')
    base_outfolder = os.path.join(achilleas_cell_results, 'PerGene')
    if not os.path.exists(base_outfolder):
        os.makedirs(base_outfolder)
    regions = pc_toolbox.create_bp_region_list(region_loc)
    for region in regions:
        ID = region.ID
        band = region.band
        outfolder = os.path.join(base_outfolder, ID)
        if not os.path.exists(outfolder):
            os.makedirs(outfolder)
        os.chdir(outfolder)
        region_genefolder = os.path.join(genefolder, ID)
        genelist = os.path.join(region_genefolder, ID+'_genes.list')
        genes = read_list(genelist)
        for gene in genes:
##                outfolder = os.path.join(base_outfolder, region.ID)
##                if not os.path.exists(outfolder):
##                    os.makedirs(outfolder)
            refsnp_loc = os.path.join(region_genefolder, gene + '_ref.txt')
            refsnp = read_single(refsnp_loc)
            gene_prelude = locate_prelude(outfolder, gene, cell_type, ID)
            cell_postlude = None#locate_postlude(cell_type, postlude_folder)
            write_prelude(prelude_base, gene, gene_prelude)
            graph_title = create_title(cell_type, ID, gene)
            prefix = create_prefix(cell_type, band, gene, perm, cis)
##                os.chdir(outfolder)
            locuszoom(table_loc, region,graph_title, index_dict, outfolder,
                      refsnp, prefix, gene_prelude, cell_postlude)
        os.chdir(base_outfolder)
        try:
            os.rmdir(outfolder)
        except OSError:
            pass
def main(argv):
    out_folder = '/home/jkb4y/cphgdesk_share/Yan/UBASH3A'
    eurmeta_out = os.path.join(out_folder, 'eurmeta_UBASH3A_122112.txt')
    eurmeta_in = '/home/jkb4y/work/data/2012Feb1/eurmeta_Oct2012/eurmeta_lz_hg19_intersect.tbl'
    eurmeta_dict, thing = pc_toolbox.create_index_dict(eurmeta_in, 'meta')
    family_out = os.path.join(out_folder, 'eurgdtscan_UBASH3A_122112.txt')
    family_in = '/home/jkb4y/work/data/2012Feb1/Family_Nov2012/eurgdtscan_lz_hg19_intersect.txt'
    family_dict, thing = pc_toolbox.create_index_dict(family_in, 'family')
    region_loc ='/home/jkb4y/work/data/Region_Lists/hg19/T1D_regions_hg19_09202012.txt'
    region_list = pc_toolbox.create_bp_region_list(region_loc)
    for region in region_list:
        if region.ID == '21q22.3_a':
            print region
            filter_by_region(region, eurmeta_in,eurmeta_out, eurmeta_dict)
            filter_by_region(region, family_in, family_out, family_dict)
Example #3
0
def which_one(region_loc, table_loc, chromosome, index_dict, zero_list):
    if region_loc is not None:
        ##        determine_table_titles(table_loc)
        ##        region_list = create_region_list(region_loc, region_col_dict)
        region_list = pc_toolbox.create_bp_region_list(region_loc)
        ##        mb_region_list = pc_toolbox.create_region_list(region_loc)
        ##        region_list = list()
        ##        for mb_region in mb_region_list:
        ##            region = RegInfo(chro = mb_region.chro, start = int(float(mb_region.start) * 1e6),
        ##                             end = int(float(mb_region.end) *1e6),
        ##                             band=mb_region.band, sym=mb_region.sym,
        ##                             ID=mb_region.ID,title=mb_region.title)
        ##            region_list.append(region)
        print region_list
    else:
        range_list = macro_ranges(table_loc, chromosome, index_dict)
        ##        print(range_list)
        region_list = macro_regions(chromosome, range_list)
    ##    base, ext = os.path.splitext(table_loc)
    ##    noZ_loc = base + '_noZs'+ext
    fix_list, zr_list = identify_zerops(region_list, zero_list)
    print (
        """
************************************************************************************
Here are the regions which will be drawn:
"""
    )
    for fix in fix_list:
        print fix
    print (
        """
The following regions contain zero p-values, and will be adapted:"""
    )
    for z in zr_list:
        print z

    print (
        """
************************************************************************************"""
    )
    sys.stdout.flush()
    return fix_list, zr_list
Example #4
0
def main(argv):
    global altref, altannot
    altref = False
    altannot = False
    yank_loc = "/home/jkb4y/cphgdesk_share/Projects/IMCHIP/Intersect_SNP_list/eurmeta_10172012/RegionYank/eurmeta_yank.tbl"
    #region_loc = '/home/jkb4y/work/data/Region_Lists/hg19/T1D_regions_hg19_09202012.txt'
    #region_loc = '/home/jkb4y/work/data/Region_Lists/hg19/T1D_regions_hg19_09202012_chr19_20_21_22_23.txt'
    region_loc = '/home/jkb4y/work/data/Region_Lists/hg19/achilleas_all_09202012.txt'
    #region_loc = '/home/jkb4y/work/data/Region_Lists/hg19/achilleas_chr21_22_23_09202012.txt'
    #region_loc = '/home/jkb4y/work/data/Region_Lists/hg19/MHC_zoom.txt'
    #assoc_loc = '/home/jkb4y/ubs/work/results/July2012/ModelComparison/AA_cov_12_nosex.assoc.logistic'
    assoc_loc = '/home/jkb4y/ubs/work/results/July2012/ModelComparison/AA_cov_12_nosex_SIlz.assoc.logistic'

    #outfolder = '/home/jkb4y/ubs/work/results/July2012/RegionGraphs/RefTopUK'
    #outfolder = '/home/jkb4y/cphgdesk_share/Projects/IMCHIP/July2012/RegionGraphs/MHC'
    #outfolder = '/home/jkb4y/ubs/work/results/July2012/RegionGraphs/RefTopUK_expand_0.2'
    #outfolder = '/home/jkb4y/ubs/work/results/July2012/RegionGraphs/SI_Annot_expansion_0.1'
    outfolder = '/home/jkb4y/ubs/work/results/July2012/RegionGraphs/Achilleas_regions'
    outfolder = '/home/jkb4y/cphgdesk_share/Projects/IMCHIP/July2012/RegionGraphs/Achilleas_regions_expansion_0.1'
    
    #assoc_loc = fix_it.locate_fixed_table(assoc_loc, build="hg19",table_type = "assoc")
    regions = pc_toolbox.create_bp_region_list(region_loc)
    expansion = int(.1e6)
    ref_dict = make_ref_dict(yank_loc)
    print ref_dict
    for region in regions:
        prefix = region.ID + '_AA'
        cache_folder = os.path.join(outfolder, 'ld_caches')
        if not os.path.exists(cache_folder):
            os.makedirs(cache_folder)
        ld_cache = os.path.join(cache_folder, 'chr{0}_ld_cache.db'.format(region.chro))
        lz_args = ["locuszoom", "--metal", assoc_loc,
                   '--chr',region.chro, '--start',str(region.start - expansion),
                   '--end',str(region.end + expansion),'--pvalcol','P','--markercol','EXTREME_LZ',
                   "--pop","AFR",'--build','hg19','--source','1000G_Nov2010',
                   '--prefix', prefix,
                   #'annotCol=annotation','annotPch=24,25,22,23,21',
                   #'annotOrder=splice,nonsyn,coding,utr,no-annotation',
                   '--plotonly','--verbose','--no-date','--delim','whitespace','ymax=5',
                   '--cache',ld_cache]
        if altannot:
            lz_args.extend([#'prelude=./altannot_prelude.R',
                            'postlude=/home/jkb4y/h4t1/programs/plink_python/aa_postlude.R',
                            'refsnpTextColor=transparent',
                            'annotCol=SI_annotation',
                            'annotPch=8,21','annotOrder=SI,none'])
        else:
            lz_args.extend(['annotCol=annotation','annotPch=24,25,22,23,21',
                            'annotOrder=splice,nonsyn,coding,utr,no-annotation'])
##        if refsnp in ['rs75793288'] and not altref:
##            lz_args.extend(['--no-ld'])
        #if region.title in ['20p13'] and not altref:
         #   lz_args.extend(['--no-ld'])
        if region.ID in ['1p21.2_y','1q23.3_b_y','12p13.33_y'] and not altref:
            lz_args.extend(['--no-ld'])
        if int(region.chro) > 22:
            lz_args.extend(['--no-ld'])
        if region.title not in ['6p21.32'] and altref:
            refsnp = ref_dict[region.ID][0]
            if refsnp in ['rs75793288','rs3216815','rs12416116']:
                lz_args.extend(['--no-ld'])
            title = "{0}: AA population, refsnp {1}".format(region.ID, refsnp)
            lz_args.extend(["--refsnp",refsnp,'title={0}'.format(title)])
        else:
            lz_args.extend(['title={0}'.format(region.ID)])
            if region.ID in ['20p13']:
                lz_args.extend(['--no-ld'])
            if region.ID in ['6p21.32']:
                lz_args.extend(['rfrows=7'])
        locuszoom(lz_args, outfolder)