コード例 #1
0
def info_send(cs, argument):
    termcolor.cprint('INFO', 'green')
    s = Seq(argument)
    info_dict = s.info_seq()
    response1 = 'Total length: ' + str(len(argument)) + '\n'
    cs.send(response1.encode())
    response2 = 'A: ' + str(info_dict['A'][0]) + ' ' + str(info_dict['A'][1]) + '%' + '\n'
    cs.send(response2.encode())
    response3 = 'C: ' + str(info_dict['C'][0]) + ' ' + str(info_dict['C'][1]) + '%' + '\n'
    cs.send(response3.encode())
    response4 = 'G: ' + str(info_dict['G'][0]) + ' ' + str(info_dict['G'][1]) + '%' + '\n'
    cs.send(response4.encode())
    response5 = 'T: ' + str(info_dict['T'][0]) + ' ' + str(info_dict['T'][1]) + '%' + '\n'
    cs.send(response5.encode())
    print(response1, response2, response3, response4, response5)
コード例 #2
0
def info(sequence):
    s = Seq(sequence)
    info_dict = s.info_seq()
    response = f"""Total length {len(sequence)}
    A: {info_dict['A'][0]} ({info_dict['A'][1]}%)
    C: {info_dict['C'][0]} ({info_dict['C'][1]}%)
    G: {info_dict['A'][0]} ({info_dict['G'][1]}%)
    T: {info_dict['T'][0]} ({info_dict['T'][1]}%)"""
    context = {
        'sequence': sequence,
        'information': response,
        'operation': 'Info'
    }
    contents = read_template_html_file('operation.html').render(
        context=context)
    return contents
コード例 #3
0
def obtain_info_list(dict_info):
    input_seq = dict_info['seq']
    sequence_seq = Seq(input_seq)
    seq_length = []
    length = sequence_seq.len()
    seq_length.append(length)
    info_dict = sequence_seq.info_seq()
    A_list = info_dict['A']
    C_list = info_dict['C']
    G_list = info_dict['G']
    T_list = info_dict['T']
    info_list = []
    info_list.append(A_list)
    info_list.append(C_list)
    info_list.append(G_list)
    info_list.append(T_list)
    info_list.append(seq_length)
    return info_list
コード例 #4
0
def get_list_info(dict_info):
    sequence_asked = dict_info['seq']
    seq_seq = Seq(sequence_asked)
    length_seq = []
    length = seq_seq.len()
    length_seq.append(length)
    info_dict = seq_seq.info_seq()
    list_A = info_dict['A']
    list_C = info_dict['C']
    list_G = info_dict['G']
    list_T = info_dict['T']
    lists_info = []
    lists_info.append(list_A)
    lists_info.append(list_C)
    lists_info.append(list_G)
    lists_info.append(list_T)
    lists_info.append(length_seq)
    return lists_info
コード例 #5
0
connection = http.client.HTTPConnection(SERVER)
for g in GENES_LIST:
    try:
        ID = DICT_GENES[g]
        connection.request("GET", ENDPOINT + ID + PARAMETERS)
        response = connection.getresponse()
        print("\nSERVER: ", SERVER)
        print("URL: ", SERVER + ENDPOINT + ID + PARAMETERS)
        print("Response received:", response.status, response.reason, "\n")
        if response.status == 200:
            response_dict = json.loads(response.read().decode())
            # print(json.dumps(response_dict, indent=4, sort_keys=True))
            print_colored("GENE: ", g, "yellow")
            print_colored("Description: ", response_dict["desc"], "yellow")
            sequence = Seq(response_dict["seq"])
            seq_length = sequence.len()
            count_dict = sequence.count_bases()
            # most_frequent_base = sequence.most_frequent_base(count_dict)
            info_dict = sequence.info_seq()
            A = info_dict['A']
            G = info_dict['G']
            C = info_dict['C']
            T = info_dict['T']
            bases_dict = {'G': G[0], 'A': A[0], 'C': C[0], 'T': T[0]}
            max_value = max(bases_dict, key=bases_dict.get)
            print(colored("Total length:", "yellow"), seq_length, "\n", colored(f"""A: {A[0]} ({round(A[1], 1)}%)
     C: {C[0]} ({round(C[1], 1)}%)
     G: {G[0]} ({round(G[1], 1)}%)
     T: {T[0]} ({round(T[1], 1)}%)""", "blue"), "\n", colored("Most frequent base:", "yellow"), max_value)
    except KeyError:
        print("The gene is not inside our database. Choose one of the following", list(DICT_GENES.keys()))