У меня есть код, который возвращает разные значения, вычисленные по коротким белковым последовательностям, однако, когда я пытался сохранить их в файле csv, сохраняется только последнее значение. Как я могу сохранить их все?
Мой код:
with open('seq.txt', 'r') as f:
for sequence in f:
import random
molDes_01 = {'A': random.uniform(-1.0, 1.0), 'L': random.uniform(-1.0, 1.0),
'R': random.uniform(-1.0, 1.0), 'K': random.uniform(-1.0, 1.0),
'N': random.uniform(-1.0, 1.0), 'M': random.uniform(-1.0, 1.0),
'D': random.uniform(-1.0, 1.0), 'F': random.uniform(-1.0, 1.0),
'C': random.uniform(-1.0, 1.0), 'P': random.uniform(-1.0, 1.0),
'Q': random.uniform(-1.0, 1.0), 'S': random.uniform(-1.0, 1.0),
'E': random.uniform(-1.0, 1.0), 'T': random.uniform(-1.0, 1.0),
'G': random.uniform(-1.0, 1.0), 'W': random.uniform(-1.0, 1.0),
'H': random.uniform(-1.0, 1.0), 'Y':random.uniform(-1.0, 1.0),
'I': random.uniform(-1.0, 1.0), 'V': random.uniform(-1.0, 1.0)}
aaindex_values = []
aaindex_listT = [molDes_01]
for i in aaindex_listT:
a_a = sequence.count("A") * i["A"]
c_c = sequence.count("C") * i["C"]
d_d = sequence.count("D") * i["D"]
e_e = sequence.count("E") * i["E"]
f_f = sequence.count("F") * i["F"]
g_g = sequence.count("G") * i["G"]
h_h = sequence.count("H") * i["H"]
i_i = sequence.count("I") * i["I"]
k_k = sequence.count("K") * i["K"]
l_l = sequence.count("L") * i["L"]
m_m = sequence.count("M") * i["M"]
n_n = sequence.count("N") * i["N"]
p_p = sequence.count("P") * i["P"]
q_q = sequence.count("Q") * i["Q"]
r_r = sequence.count("R") * i["R"]
s_s = sequence.count("S") * i["S"]
t_t = sequence.count("T") * i["T"]
v_v = sequence.count("V") * i["V"]
w_w = sequence.count("W") * i["W"]
y_y = sequence.count("Y") * i["Y"]
values = (a_a + c_c + d_d + e_e + f_f + g_g + h_h + i_i + k_k + l_l + m_m + n_n + p_p + q_q + r_r + s_s + t_t + v_v + w_w + y_y)/len(sequence)
aaindex_values.append(values)
for j in aaindex_values:
import csv
with open('process.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow([j])
Содержимое файла 'seq.txt' состоит из нескольких коротких последовательностей, см. Ниже:
CVCVKTTSLVRPRHI
GLNGPDIYKGUYQFK
RRKKLAALPLVLAAP
RWRWRWRW
RWRWRWRWRW
SDDPKESEGDLHCVC
ALNTLVKQLSSNFGAISSVLNDILSRLDKVEAEVQIDRL