Skip to content

Translator Clinical Information Score

karafecho edited this page Jun 24, 2024 · 3 revisions

Synonyms

Clinical

Brief Definition

The Clinical Information Score is calculated as a weighted average of the natural logarithm of the odds ratio for an observed real-world association between a drug exposure and a disease diagnosis, as asserted by Translator's clinical knowledge sources. The Clinical Information Score is thresholded as [0,1).

Detailed Definition

The Clinical Information Score is generated by the SRI Answer Appraiser and contributes to the Translator Ordering Score. It provides an indication of the degree to which observational clinical information (electronic health record data, clinical research study data) supports a given Translator result in response to the question: what drugs may treat disease X? The Clinical Information Score is derived from three Translator Clinical Knowledge Providers: Columbia Open Health Data, the Integrated Clinical and Environmental Exposures Service, and Multiomics EHR Risk Provider. Each of these knowledge providers exposes observed associations between drug prescriptions or administrations and disease diagnoses, although the precise meaning and derivational method of those associations varies by provider.

The Clinical Information Score is calculated as a weighted average of the natural logarithm of the odds ratio for an observed association between a drug exposure and a disease outcome. The specific formula is:

icees-kg: log_odds_ratio = OR1

total_sample_size =  N1

weight = W1 = N1/(N1 + N2 + N3)

cohd: log_odds_ratio = OR2

total_sample_size =  N2

weight = W2 = N2/(N1 + N2 + N3)

multiomics-ehr-risk-provider: log_odds_ratio = OR3

total_sample_size =  N3

weight = W3  = N3/(N1 + N2 + N3)

clinical_information_score = (W1 * OR1 + W2 * OR2 + W3 * OR3) / (W1 + W2 + W3)

A cap of 10 is imposed on the |log_odds_ratio| for each clinical knowledge provider in order to avoid skewing the overall score due to extremely high log_odds_ratio values, which are uncommon and often reflect very large sample sizes. Finally, the overall score is normalized [0,1) using the logistic normalization function in Python. The key code block is:

import numpy as np

def logistic_norm(x): return (1/(1+np.exp(-np.abs(x)))-0.5) * 2

Clone this wiki locally