Pathway perturbation
#pathway perturbation results
import scanpy as sc
import numpy as np
import pickle
from UNAGI.speedup_perturbation import perturbation
adata = sc.read_h5ad('dataset.h5ad')
uns = pickle.load(open('attribute.pkl', 'rb'))
keys = list(uns['random_background_perturbation_deltaD']['0.5'].keys()).copy()
del uns['random_background_perturbation_deltaD']['0.5']
del uns['random_background_perturbation_deltaD']['2.0']
del uns['pathway_perturbation_score']
adata.uns = uns
#pathway median gene len: 4
#pathway mean gene len: 8
a = perturbation(adata, 'model_save/mes_4.pth','idrem')
a.run('random_background',0.5,random_genes=20,random_times=1000,inplace=True)
a.run('pathway',0.5,inplace=True)
a.analysis('pathway',0.5)
import pandas as pd
pd.DataFrame.from_dict(adata.uns['pathway_perturbation_score']['0.5']['total']['top_pathways']).to_csv('pathway_results.csv')
Drug perturbation
#drug perturbation results
import scanpy as sc
import numpy as np
import pickle
from UNAGI.speedup_perturbation import perturbation
adata = sc.read_h5ad('dataset.h5ad')
uns = pickle.load(open('attribute.pkl', 'rb'))
keys = list(uns['random_background_perturbation_deltaD']['0.5'].keys()).copy()
del uns['random_background_perturbation_deltaD']['0.5']
del uns['random_background_perturbation_deltaD']['2.0']
del uns['pathway_perturbation_score']
adata.uns = uns
#drug median gene len: 2
#drug mean gene len: 2
a = perturbation(adata, 'model_save/mes_4.pth','idrem')
a.run('random_background',0.5,random_genes=20,random_times=1000,inplace=True)
a.run('drug',0.5,inplace=True)
a.analysis('drug',0.5)
import pandas as pd
pd.DataFrame.from_dict(adata.uns['drug_perturbation_score']['0.5']['total']['top_compounds']).to_csv('drug_results.csv')