| import os, sys, glob | |
| import inspect | |
| from genet_models import DeepPrime | |
| ''' | |
| Model finder repo | |
| Get your models from here! | |
| ''' | |
| def load_genet_model(model_id='PE2', cell_type='HEK293T'): | |
| ''' | |
| model_id: PE2, PE2max, PE4max, PE2max-e, PE4max-e, NRCH_PE2, NRCH_PE2max, NRCH_PE4max | |
| cell_rtpe: HEK293T, A549, DLD1, HCT116, HeLa, MDA-MB-231, NIH3T3 | |
| >>> from genet_models import load_model | |
| >>> model_dir, model_type = load_model('PE2max', 'HEK293T') | |
| ''' | |
| print('get model: %s - %s' % (model_id, cell_type)) | |
| model_dir = inspect.getfile(DeepPrime).replace('/__init__.py', '').replace('\\__init__.py', '') | |
| dict_models = { | |
| 'HEK293T': { | |
| 'PE2' : 'DeepPrime_base', | |
| 'NRCH_PE2' : 'DP_variant_293T_NRCH_PE2_Opti_220428', | |
| 'NRCH_PE2max': 'DP_variant_293T_NRCH-PE2max_Opti_220815', | |
| 'PE2max' : 'DP_variant_293T_PE2max_Opti_220428', | |
| 'PE2max-e' : 'DP_variant_293T_PE2max_epegRNA_Opti_220428', | |
| 'PE4max' : 'DP_variant_293T_PE4max_Opti_220728', | |
| 'PE4max-e' : 'DP_variant_293T_PE4max_epegRNA_Opti_220428', | |
| }, | |
| 'A549': { | |
| 'PE2max' : 'DP_variant_A549_PE2max_Opti_221114', | |
| 'PE2max-e' : 'DP_variant_A549_PE2max_epegRNA_Opti_220428', | |
| 'PE4max' : 'DP_variant_A549_PE4max_Opti_220728', | |
| 'PE4max-e' : 'DP_variant_A549_PE4max_epegRNA_Opti_220428', | |
| }, | |
| 'DLD1': { | |
| 'NRCH_PE4max': 'DP_variant_DLD1_NRCHPE4max_Opti_220728', | |
| 'PE2max' : 'DP_variant_DLD1_PE2max_Opti_221114', | |
| 'PE4max' : 'DP_variant_DLD1_PE4max_Opti_220728', | |
| }, | |
| 'HCT116': { | |
| 'PE2' : 'DP_variant_HCT116_PE2_Opti_220428', | |
| }, | |
| 'HeLa': { | |
| 'PE2max' : 'DP_variant_HeLa_PE2max_Opti_220815', | |
| }, | |
| 'MDA-MB-231': { | |
| 'PE2' : 'DP_variant_MDA_PE2_Opti_220428', | |
| }, | |
| 'NIH3T3': { | |
| 'NRCH_PE4max': 'DP_variant_NIH_NRCHPE4max_Opti_220815', | |
| }, | |
| } | |
| try: | |
| model_type = dict_models[cell_type][model_id] | |
| except: | |
| print('Not available Prime Editor') | |
| sys.exit() | |
| return model_dir, model_type |