Spaces:
Sleeping
Sleeping
File size: 1,073 Bytes
01554a7 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
from joblib import load
from model import process_dna
loaded_model = load("SacCerML.joblib")
def merge_fastas(fileslist):
finale = []
finalfile = fileslist[-1].split(".")[0]+"_mergedfastas.fasta"
for fl in fileslist:
f = open(fl, "r")
lines = f.readlines()
f.close()
for line in lines:
finale.append(line)
fnlfl = open(finalfile, "w")
for l in finale:
if l.endswith("\n"):
fnlfl.write(l)
else:
fnlfl.write(l+"\n")
fnlfl.close()
return finalfile
def predict_genes(infile, model=loaded_model):
X, proteins = process_dna(infile)
headers = list(X.keys())
predictions = []
for x in list(X.values()):
p = model.predict(x)
predictions.append(p)
msg = []
for i in range(len(predictions)):
msg.append(
f"{headers[i]} protein sequence is\n{proteins[headers[i]]}\nand is predicted as {predictions[i][0]}\n"
)
message = "".join(msg)
return message
|