예제 #1
0


def write(otu_in_group, outfile):
    with open(outfile, 'w') as fp:
        for group, otus in otu_in_group.iteritems():
            otus = sorted(list(otus), cmp=lambda a, b: cmp(int(a), int(b)))
            fp.write('%s\t%s\n' % (group, ' '.join(otus)))


if __name__ == '__main__':
    params = read_params(sys.argv)
    dirname=params['outputdir']
    mkdir(dirname)
    for_plot = dirname + '/for_plot.txt'
    tiff_file = dirname + '/venn.tiff'
    png_file = dirname + '/venn.png'
    vars = {'for_plot': for_plot,
            'tiff_file': tiff_file,
            'group_file': params['group_dir']}

    otu_in_group = read(params['microbial_profile'], params['group'], vars)
    write(otu_in_group, for_plot)

    r_job = Rparser()
    r_job.open(const.Rscript + '02_venn.R')
    r_job.format(vars)
    r_job.write(dirname+ '/otu_venn.R')
    r_job.run()
    image_trans(300,tiff_file, png_file)
예제 #2
0
def read_params(args):
    parser = argparse.ArgumentParser(description="group file change")
    parser.add_argument(
        "-i", "--inputfile", dest="inputfile", metavar="inputfile", type=str, required=True, help="set input file"
    )
    parser.add_argument(
        "-o", "--outputdir", dest="outputdir", metavar="outputdir", type=str, required=True, help="set out put dir"
    )
    parser.add_argument("-g", "--group", dest="group", metavar="group", type=str, required=True, help="set group file")
    args = parser.parse_args()
    params = vars(args)
    return params


if __name__ == "__main__":
    params = read_params(sys.argv)
    outputdir = params["outputdir"]
    inputfile = params["inputfile"]
    pdfoutput = outputdir + "top.pdf"
    pngoutput = outputdir + "top.png"
    group = params["group"]

    vars = {"group": group, "pdfoutput": pdfoutput, "input": inputfile}
    r_job = Rparser()
    r_job.open(const.Rscript + "02_top.R")
    r_job.format(vars)
    r_job.write(outputdir + "/top.R")
    r_job.run()
    image_trans(300, pdfoutput, pngoutput)
예제 #3
0
    params = vars(args)
    params['group'] = parse_group_file(params['group'])
    return params


if __name__ == '__main__':
    params = read_params(sys.argv)
    outputfile = params['outputfile']
    dirname,filename,suffix =get_name(outputfile)
    inputfile = params['inputfile']
    top = params['top']
    title = params['title']
    data = pd.DataFrame.from_csv(file=inputfile,sep="\t")
    data["sum"] = data.sum(axis=1)
    data = data.sort_values(by="sum",ascending=False)
    del data["sum"]
    data = data.ix[:top]
    data.to_csv("%s/for_plot.csv"%dirname,sep="\t")
    mkdir(os.path.split(outputfile)[0])
    RscriptDir = const.Rscript
    r_job = Rparser()
    r_job.open("%s/02_barplot.R"%RscriptDir)
    vars = {"top":top,
            "infile": "%s/for_plot.csv"%dirname,
            "pdf_file": outputfile,
            "title": title}
    r_job.format(vars)
    r_job.write("%s/bar_plot.R"%dirname)
    r_job.run()
    image_trans(300,"%s/%s.pdf"%(dirname,filename),"%s/%s.png"%(dirname,filename))
예제 #4
0
    parser.set_defaults(with_boxplot=True)
    args = parser.parse_args()
    params = vars(args)
    return params


if __name__ == '__main__':
    params = read_params(sys.argv)
    mkdir(params['out_dir'])
    pdf_file = params['out_dir'] + '/otu_pca.pdf'
    png_file = params['out_dir'] + '/otu_pca.png'
    vars = {'otu_profile': params['otu_table'],
            'group_file': params['group'],
            'pdf_file': pdf_file}

    r_job = Rparser()
    if params['two_legend']:
        if params['with_boxplot']:
            r_job.open(const.Rscript + '/02_tax_pca_two.R')
        else:
            r_job.open(const.Rscript + '/02_tax_pca_two.R')
    else:
        if params['with_boxplot']:
            r_job.open(const.Rscript + '/02_tax_pca_with_boxplot.R')
        else:
            r_job.open(const.Rscript + '/02_tax_pca.R')
    r_job.format(vars)
    r_job.write(params['out_dir'] + '/tax_pca.R')
    r_job.run()
    image_trans(300,pdf_file, png_file)