db_id=sql_ask_database(conn,f"SELECT chain_id FROM chain WHERE structure_id = {s.id.split('[')[0]} AND chain_name = {s.id.split('-')[1]} AND rfam_acc = {f};")
db_id=sql_ask_database(conn,f"SELECT chain_id FROM chain WHERE structure_id = '{s.id.split('[')[0]}' AND chain_name = '{s.id.split('-')[1]}' AND rfam_acc = '{f}';")
db_id=sql_ask_database(conn,f"SELECT chain_id FROM chain WHERE structure_id = '{s.id.split('[')[0]}' AND chain_name = '{s.id.split('-')[1]}' AND rfam_acc = '{f}';")
iflen(db_id):
db_id=db_id[0][0]
else:
db_id=sql_ask_database(conn,f"SELECT chain_id FROM chain WHERE structure_id = {s.id.split('[')[0]} AND chain_name = {s.id.split('-')[1]} AND rfam_acc = {f};")
iflen(db_id):
db_id=db_id[0][0]
else:
pbar.update(1)
continue
seq=''.join([x[0]forxinsql_ask_database(conn,f"SELECT nt_code FROM nucleotide WHERE chain_id = {db_id} ORDER BY index_chain ASC;")])
full_length=len(seq)
pbar.update(1)
continue
seq=''.join([x[0]forxinsql_ask_database(conn,f"SELECT nt_code FROM nucleotide WHERE chain_id = {db_id} ORDER BY index_chain ASC;")])
aliseq=''.join([x[0]forxinsql_ask_database(conn,f"SELECT nt_align_code FROM nucleotide WHERE chain_id = {db_id} ORDER BY index_chain ASC;")])
full_length=len(seq)
# detect gaps
c_seq=list(seq)# contains "ACGUNacgu-"
...
...
@@ -2638,47 +2631,47 @@ if __name__ == "__main__":
counts=dict(sql_ask_database(conn,f"SELECT nt_name, COUNT(nt_name) FROM (SELECT chain_id from chain WHERE rfam_acc='{f}') NATURAL JOIN nucleotide GROUP BY nt_name;",warn_every=0))
freqs[f].update(counts)
...
...
@@ -305,6 +314,7 @@ def stats_freq():
df=df.fillna(0)
df.to_csv(runDir+"/results/frequencies.csv")
idxQueue.put(thr_idx)# replace the thread index in the queue
df=pd.read_sql("SELECT SUM(is_A) as A, SUM(is_C) AS C, SUM(is_G) AS G, SUM(is_U) AS U, SUM(is_other) AS O, chain_id FROM nucleotide GROUP BY chain_id;",conn)