compara-deep-learning/prepare_other_features_negative.py

55 lines
1.6 KiB
Python
Raw Permalink Normal View History

2019-06-23 21:58:11 -07:00
import pandas as pd
import numpy as np
import json
import gc
import pickle
import progressbar
import sys
from tree_data import create_tree_data
smg_name="negative_dataset_synteny_matrices_global"
sml_name="negative_dataset_synteny_matrices_local"
smi_name="negative_dataset_indexes"
dir_name="processed/synteny_matrices/"
label=2
rows=[]
df=pd.read_hdf("negative_dataset.h5",key="ndf")
try:
smg=np.load(dir_name+smg_name+".npy")
sml=np.load(dir_name+sml_name+".npy")
indexes=np.load(dir_name+smi_name+".npy")
except:
print("Incomplete data")
sys.exit(1)
df=df.loc[indexes]
for _,row in progressbar.progressbar(df.iterrows()):
row["homology_species"]=row["homology_species"].lower()
branch_length_species,branch_length_homology_species,distance,dist_p_s,dist_p_hs=create_tree_data("species_tree.tree",df)
assert(len(branch_length_species)==len(df))
assert(len(sml)==len(distance))
for i in range(len(df)):
index=indexes[i]
row=df.loc[index]
r={}
r["species"]=row["species"]
r["homology_species"]=row["homology_species"]
r["gene_stable_id"]=row["gene_stable_id"]
r["homology_gene_stable_id"]=row["homology_gene_stable_id"]
r["label"]=label
r["global_alignment_matrix"]=smg[i]
r["local_alignment_matrix"]=sml[i]
r["index_homology_dataset"]=index
r["bls"]=branch_length_species[i]
r["blhs"]=branch_length_homology_species[i]
r["dis"]=distance[i]
r["dps"]=dist_p_s[i]
r["dphs"]=dist_p_hs[i]
rows.append(r)
with open("negative_dataset","wb") as file:
pickle.dump(rows,file)
print("Data Saved Successfully:)")