Exemplo n.º 1
0
def _exec(p, request_dict):
    """execute a pristine analysis with"""

    p.set_analysis_type("rdp")
    p.threshold = request_dict.get('threshold')

    seperator = request_dict['seperator']
    debug("storing seperator: '%s'" % seperator, p.files.log_file)
    open(p.files.seperator_file_path, 'w').write(seperator)

    if p.threshold:
        debug("storing confidence threshold", p.files.log_file)
        with open(p.files.threshold_path,'w') as f:
            f.write(str(p.threshold))

    debug("Extracting QA info", p.files.log_file)
    cmt = open(p.files.data_comment_file_path,'w')
    for line in open(p.files.data_file_path):
        if line.startswith(';'):
            cmt.write(line)
    cmt.close()
            
    #running rdp on data
    number_of_sequences = helper_functions.get_number_of_lines(p.files.data_file_path) / 2
    debug("running rdp on %d sequences" % number_of_sequences, p.files.log_file)
    framework.tools.rdp.run_classifier(c.rdp_running_path, p.files.data_file_path, p.files.rdp_output_file_path, p.files.rdp_error_log_file_path)

    samples_dictionary(p)
    rdp_general_confidence_image(p)
    rdp_otu_confidence_analysis(p)
    rdp_samples_confidence_image(p)
    otu_library(p)
    rarefaction_curves(p)
    if hasattr(p,'threshold'):
        separate_low_confidence(p)