compara-deep-learning/process_negative.py

64 lines
2.2 KiB
Python
Raw Normal View History

2019-08-12 05:31:37 -07:00
import pandas as pd
import numpy as np
import os
import sys
import progressbar
import json
2019-07-24 03:27:54 -07:00
import sys
from neighbor_genes import read_genome_maps
from process_data import create_data_homology_ls
from threads import Procerssrunner
from read_get_gene_seq import read_gene_sequences
2019-08-12 05:31:37 -07:00
from access_data_rest import update_rest,update_rest_protein
from prepare_synteny_matrix import read_data_synteny,write_fasta
2019-07-24 03:27:54 -07:00
from save_data import write_dict_json
2019-08-12 05:31:37 -07:00
from access_data_rest import update_rest_protein
2019-07-24 04:54:02 -07:00
2019-07-24 03:27:54 -07:00
def read_database_txt(filename):
2019-08-12 05:31:37 -07:00
df=pd.read_csv(filename,sep="\t",header=None)
df=df.drop(0,axis=1)
df.columns=["gene_stable_id","species","homology_gene_stable_id","homology_species","wga","goc","homology_type"]
2019-07-24 03:27:54 -07:00
return df
2019-07-24 04:54:02 -07:00
2019-07-24 03:27:54 -07:00
def main():
2019-08-12 05:31:37 -07:00
arg=sys.argv
a,d,ld,ldg,cmap,cimap=read_genome_maps()
2019-07-24 03:27:54 -07:00
print("Genome Maps Loaded.")
2019-08-12 05:31:37 -07:00
df=read_database_txt(arg[-2])
nop=int(arg[-1])
2019-07-24 03:27:54 -07:00
print("Data Read.")
2019-08-12 05:31:37 -07:00
a_h=[]
d_h=[]
2019-07-24 03:27:54 -07:00
a_h.append(df)
d_h.append(arg[-2].split(".")[0])
2019-08-12 05:31:37 -07:00
n=3
lsy=create_data_homology_ls(a_h,d_h,n,a,d,ld,ldg,cmap,cimap,0)
write_dict_json("neighbor_genes_negative","processed",lsy)
2019-07-24 03:27:54 -07:00
print("Neighbor Genes Found and Saved Successfully:)")
2019-08-12 05:31:37 -07:00
gene_sequences=read_gene_sequences(a_h,lsy,"geneseq","gene_seq_negative")
gene_sequences=update_rest(gene_sequences,"gene_seq_negative")
ndir="processed/synteny_matrices/"
nf1="synteny_matrices_global"
nf2="synteny_matrices_local"
nf3="indexes"
2019-07-24 03:27:54 -07:00
for i in range(len(a_h)):
2019-08-12 05:31:37 -07:00
df=a_h[i]
part=len(df)//nop
pr=Procerssrunner()
pr.start_processes(nop,df,gene_sequences,lsy,part,n,d_h[i])
smg,sml,indexes=read_data_synteny(nop,d_h[i])
2019-07-24 03:27:54 -07:00
print(len(indexes))
2019-08-12 05:31:37 -07:00
np.save(ndir+str(d_h[i])+"_"+nf1,smg)
np.save(ndir+str(d_h[i])+"_"+nf2,sml)
np.save(ndir+str(d_h[i])+"_"+nf3,indexes)
a_h[i]=df.loc[indexes]
2019-07-24 03:27:54 -07:00
print("Synteny Matrices Created Successfully :)")
2019-08-12 05:31:37 -07:00
protein_sequences=read_gene_sequences(a_h,lsy,"pro_seq","pro_seq_negative")
protein_sequences=update_rest_protein(protein_sequences,"pro_seq_negative")
write_fasta(protein_sequences,"pro_seq_negative")
2019-07-24 03:27:54 -07:00
2019-08-12 05:31:37 -07:00
if __name__=="__main__":
2019-07-24 04:54:02 -07:00
main()
2019-08-12 05:31:37 -07:00