No project description provided
Project description
data-dictionary-cui-mapping
This package allows you to load in a data dictionary and map cuis to defined fields using either the UMLS API or MetaMap API from NLM.
Installation
Use the package manager pip to install data-dictionary-cui-mapping or pip install from the GitHub repo.
pip install data-dictionary-cui-mapping
#pip install git+https://github.com/kevon217/data-dictionary-cui-mapping.git
Usage
# import batch_query_pipeline modules from metamap OR umls package
from data_dictionary_cui_mapping.metamap import batch_query_pipeline as mm_bqp
from data_dictionary_cui_mapping.umls import batch_query_pipeline as umls_bqp
# import helper functions for loading, viewing, composing configurations for pipeline run
from data_dictionary_cui_mapping.utils import helper
from omegaconf import OmegaConf
# import modules to create data dictionary with curated CUIs and check the file for missing mappings
from data_dictionary_cui_mapping.curation import create_dictionary_import_file
from data_dictionary_cui_mapping.curation import check_cuis
# LOAD/EDIT CONFIGURATION FILES
cfg = helper.compose_config.fn(overrides=["custom=de", "apis=config_metamap_api"]) # custom config for MetaMap on data element 'title' column
# cfg = helper.compose_config.fn(overrides=["custom=de", "apis=config_umls_api"]) # custom config for UMLS API on data element 'title' column
# cfg = helper.compose_config.fn(overrides=["custom=pvd", "apis=config_metamap_api"]) # custom config for MetaMap on 'permissible value descriptions' column
# cfg = helper.compose_config.fn(overrides=["custom=pvd", "apis=config_umls_api"]) # custom config for UMLS API on 'permissible value descriptions' column
cfg.apis.user_info.email = '' # enter your email
cfg.apis.user_info.apiKey = '' # enter your api key
print(OmegaConf.to_yaml(cfg))
# STEP-1: RUN BATCH QUERY PIPELINE
df_final_mm = mm_bqp.main(cfg) # run MetaMap batch query pipeline
# df_final_umls = umls_bqp.main(cfg) # run UMLS API batch query pipeline
# MANUAL CURATION STEP IN EXCEL FILE (see curation example in notebooks/examples_files/DE_Step-1_curation_keepCol.xlsx)
# STEP-2: CREATE DATA DICTIONARY IMPORT FILE
cfg = helper.load_config.fn(helper.choose_input_file.fn("Load config file from Step 1"))
create_dictionary_import_file.main(cfg)
# CHECK CURATED CUI MAPPINGS
cfg = helper.load_config.fn(helper.choose_input_file.fn("Load config file from Step 2"))
check_cuis.main(cfg)
Acknowledgements
The MetaMap API code included is from Will J Roger's repository --> https://github.com/lhncbc/skr_web_python_api
Special thanks to Olga Vovk and Henry Ogoe for their guidance, feedback, and testing of this package.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for data_dictionary_cui_mapping-1.0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09bff4097a988ec99063f60c8614a6f380a78e2e5413f947657228b21f9bde7f |
|
MD5 | 4611dbf1a4a2bbfa37387ef6afa692c7 |
|
BLAKE2b-256 | 3001cd3174c59fa664c7b02bf91336ede697169f3cef55b21b49021f7c49b409 |
Close
Hashes for data_dictionary_cui_mapping-1.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b89ea1e73b0a2dea9f29de81b68adb71f899d48253a1d899ce0568c68937ded2 |
|
MD5 | 277644f0f7951b05e8a50c16f6ea5849 |
|
BLAKE2b-256 | 194522519513a40eb75aa18e56e0089f0a6f9f747f01a3b45b592a56a54dfb6f |