Patrick: Highlight how to use key elements within  • OMOP common data model Agenda for today’s workshop

OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Agenda for today’s workshop
• Patrick: Highlight how to use key elements within OMOP common data model
• Christian: Demonstrate how to use OMOP vocabulary as exploratory tool to standardize concepts used in analysis
• David: Show how building blocks can be combined to implement observational study designs • OMOP community: demonstrate applications developed using the OMOP framework
• OMOP community: present posters on latest research conducted across our organizations
1
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Exploring the OMOP Standard Vocabulary
Christian Reich
AstraZeneca LP
5 November 2013
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
1.
2.
3.
4.
OMOP Vocabulary Common Data Model
All content: concepts in concept table Source codes mapped to concepts in source_to_concept_map
Direct relationships between concepts listed in concept_relationship
Multi‐step hierarchical relationships pre‐processed in concept_ancestor
3
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
MiniSentinel in use: dabigatran and bleeding
• Conditions: – Atrial fibrillation
– Upper GI bleeding
• Drugs:
– warfarin
– dabigatran
http://www.fda.gov/Drugs/DrugSafety/ucm326580.htm
• Gender
Patrick showed us a lot of code like this:
WHERE condition_concept_id = 313217 /* Atrial fibrillation */;
What is this number?
4
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
All Content in CDM is Coded as Concepts
• All content in CDM tables is represented as concepts
• Concepts are referred to by concept_id
• All details are in the concept table:
Shows all fields
SELECT
*
FROM
concept
WHERE
concept_id = 313217
;
5
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
The concept Table
All vocabularies stacked up in one table
Vocabulary ID
Vocabulary Name
6
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Example Concept
For use in CDM
English description
Hierarchical level
Kind of concept
Which vocabulary: SNOMED
Code in SNOMED
Valid during time interval: always
7
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Disease Concepts
SMQ
MedDRA
System organ
class (Level 5)
SMQ
MedDRA
High-level group
terms (Level 4)
SMQ
MedDRA
High-level terms
(Level 3)
SMQ
MedDRA
Preferred terms
(Level 2)
MedDRA
Low-level terms
(Level 1)
Classifications
Cohort
Top-level
classification
SNOMED-CT
Higher-level
classifications
(Level 2 and up)
SNOMED-CT
Low-level concepts
(Level 1)
Standard vocabulary
SNOMED-CT
Source codes
Source codes
ICD-10-CM
Mapping
Read
Oxmis
ICD-9-CM
SNOMED
Existing
De Novo
Derived
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Finding the Right Concept: #1
1. ..if I know the ID
SELECT * FROM concept WHERE concept_id = 313217;
SNOMED code
2. ..if I know the code
SELECT * FROM concept WHERE concept_code = '49436004';
9
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Concept code 49436004 in SNOMED Browser
SNOMED code
10
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Concept ID versus Concept Code
SELECT * FROM concept WHERE concept_code = '1001';
Same code
11
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Finding the Right Concept: #2
3. ..if I know the name
SELECT * FROM concept WHERE concept_name = 'Atrial fibrillation';
12
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Finding the Right Concept: #3
1. if don't know any of this, but I know the code in another vocabulary
SELECT * FROM concept WHERE concept_code = '427.31';
ICD‐9 is not in the concept table
SELECT * FROM source_to_concept_map WHERE source_code = '427.31';
Mapping to different vocabularies
Primary, secondary maps
13
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Codes from Different Vocabularies all Map to Concept
/* ICD-9-CM */
SELECT * FROM source_to_concept_map WHERE source_code = '427.31';
/* Read */
SELECT * FROM source_to_concept_map WHERE source_code = 'G573000';
/* ICD-10-CM */
SELECT * FROM source_to_concept_map WHERE source_code = 'I48.0';
Concept
313217 – Atrial Fibrillation
Source codes
ICD-9-CM 427.31
Atrial Fibrillation
Read G573000
Atrial Fibrillation
ICD-10-CM I48.0
Atrial Fibrillation
14
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Why not Use Codes?
Reason #1: Different data use different codes
• Administrative Claims
– Conditions: ICD‐9‐CM
• Until 2014, when ICD‐10‐CM becomes CMS billing standard
– Drugs: NDC
• If you only care about pharmacy dispensing If the product is administered by physician, then HCPCS, ICD9P, CPT4
• Electronic health records
– Conditions: ICD‐9‐CM, SNOMED, ICD‐10‐CM, free text
– Drugs: NDC, Multum, GPI, VA Product, ChargeMaster, free text
15
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Codes Used in the World
EUADR
CPRD
THIN
• Conditions
– READ, OXMIS, ICD‐9‐CM, ICD‐10‐CM, ICPC, MedDRA, freetext in different languages
ASPEN
• Drugs
– Multilex, DM+D, ATC, NPI, NDC* (*for different nations), freetext in different languages
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Reason #2: Disease Hierarchy
Disease of the
cardiovascular system
Heart disease
Cardiac arrhythmia
Supraventricular
arrhythmia
SNOMED Concepts
Fibrillation
Concept Relationships
Controlled
atrial
fibrillation
Atrial arrhythmia
Atrial fibrillation
Persistent
atrial
fibrillation
Chronic
atrial
fibrillation
Paroxysmal
atrial
fibrillation
Rapid
atrial
fibrillation
Permanent
atrial
fibrillation
17
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Exploring Relationships
SELECT
*
FROM
concept_relationship
WHERE
concept_id_1 = 313217;
Related Concepts
Relationship Type
18
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Exploring Relationships #2
SELECT r.relationship_name, c.*
FROM concept_relationship cr
JOIN concept c ON cr.concept_id_2 = c.concept_id
JOIN relationship r ON cr.relationship_id = r.relationship_id
WHERE cr.concept_id_1 = 313217;
Find out related concept
Find out nature
of relationship
Child concepts
Parent concepts
19
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Ancestry Relationships: Higher‐Level Relationships
5 levels of separation
Disease of the
cardiovascular system
Ancestry Relationships
Heart disease
Ancestor
Cardiac arrhythmia
Supraventricular
arrhythmia
Concepts
Fbrillation
Concept Relationships
Descendant
Controlled
atrial
fibrillation
2 levels of separation
Atrial arrhythmia
Atrial fibrillation
Persistent
atrial
fibrillation
Chronic
atrial
fibrillation
Paroxysmal
atrial
fibrillation
Rapid
atrial
fibrillation
Permanent
atrial
fibrillation
20
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Exploring Ancestors of a Concept
SELECT max_levels_of_separation, ancestor.*
FROM concept_ancestor a, concept ancestor
WHERE a.descendant_concept_id = 313217 /* Atrial fibrillation */
AND a.ancestor_concept_id = ancestor.concept_id
ORDER BY max_levels_of_separation
;
Query Concept
MedDRA
21
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Exploring Descendants of a Concept
SELECT max_levels_of_separation, descendant.*
FROM concept_ancestor a, concept descendant
WHERE a.ancestor_concept_id = 316999 /* cardiac arrythmia */
AND a.descendant_concept_id = descendant.concept_id
ORDER BY max_levels_of_separation
;
22
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Now, let's find "Upper Gastrointestinal Bleeding"
1. Find some initiation concept
SELECT * FROM concept WHERE concept_name = 'Upper gastrointestinal bleeding';
SELECT * FROM concept WHERE lower(concept_name) LIKE '%upper gastrointestinal%';
23
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Let's find "Upper Gastrointestinal Bleeding" ‐ #2
2. Find optimal Ancestor
SELECT max_levels_of_separation, ancestor.*
FROM concept_ancestor a, concept ancestor
WHERE a.descendant_concept_id = 4308202 /* Acute upper gastrointestinal haemorrhage */
AND a.ancestor_concept_id = ancestor.concept_id
ORDER BY max_levels_of_separation;
24
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Let's find "Upper Gastrointestinal Bleeding" ‐ #3
3. Check Descendants
SELECT max_levels_of_separation, descendant.*
FROM concept_ancestor a, concept descendant
WHERE a.ancestor_concept_id = 4291649 /* Upper GI - gastrointestinal haemorrhage */
AND a.descendant_concept_id = descendant.concept_id
ORDER BY max_levels_of_separation;
Concept 4291649 and all its children comprise Upper GI Bleeding
25
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Does it Work that Way with Drugs?
• Codes
– NDC, GPI, Multilex, HCPCS, etc.
• Concepts
– Drug products (Generic and Brand)
– Drug ingredients
– Drug Classes
• Relationships
• Ancestry
26
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Drug Hierarchy
Drug Classes
Standard Drug Vocabulary:
Drug Codes
Procedure Drugs
27
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Let's find "Warfarin"
1. Find active compound Warfarin by keyword
SELECT * FROM concept WHERE concept_name = 'Warfarin';
28
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Let's find "Dabigatran"
1. Find drug product containing Dabigatran by NDC code:
Boehringer Ingelheim's Pradaxa 75mg capsules: 00597014960
SELECT * FROM source_to_concept_map WHERE source_code='00597014960';
29
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Let's find "Dabigatran" ‐ #2
2. Find ingredient Dabigatran as Ancestor of drug product
SELECT a.max_levels_of_separation, ancestor.*
FROM concept_ancestor a, concept ancestor
WHERE a.descendant_concept_id = 40228162 /* dabigatran etexilate 75 MG Oral Capsule
[Pradaxa] */
AND a.ancestor_concept_id = ancestor.concept_id
ORDER BY max_levels_of_separation;
Dabigatran
Drug classes
30
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Check out Ingredients
3. Check Descendants (other drug products containing Warfarin and Dabigatran)
SELECT max_levels_of_separation, descendant.*
FROM concept_ancestor a, concept descendant
WHERE a.ancestor_concept_id = 1310149 /* Warfarin or 40228152 Dabigatran */
AND a.descendant_concept_id = descendant.concept_id
Ingredients
ORDER BY max_levels_of_separation;
Generic drugs
Warfarin sold in the UK as suspension
Branded drugs
Dabigatran sold in the UK at 110 mg strength
31
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Find members of out Drug Classes
Check Ingredient Descendants of Drug Class "Anticoagulants"
SELECT max_levels_of_separation, descendant.*
FROM concept_ancestor a, concept descendant
WHERE a.ancestor_concept_id = 21500803 /* ETC Anticoagulants */
AND a.descendant_concept_id = descendant.concept_id
AND descendant.concept_class = 'Ingredient'
ORDER BY max_levels_of_separation;
32
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Using Classes for Querying the Data
Patrick's slide 28:
WHERE
drug_concept_id IN (
SELECT descendant.concept_id
FROM concept_ancestor a, concept descendant
WHERE a.ancestor_concept_id = 21500803 /* ETC Anticoagulants */
AND a.descendant_concept_id = descendant.concept_id
)
33
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Summary
Top-level concepts
Classification A
Classification B
Classification C
Class concepts
Classification A
Classification B
Classification C
Low-level concepts
(Level 1)
Standard Terminology
Relationships/Ancestry
between concepts
Source codes
Source 1
1.
2.
3.
4.
Source to concept maps
Source 2
Source 3
Source 4
Source 5
All content: concepts in concept table Source codes mapped to concepts in source_to_concept_map
Direct relationships between concepts listed in concept_relationship
Multi‐step hierarchical relationships pre‐processed in concept_ancestor
Visit the new http://omop.org/Vocabularies.
34
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Lessons Learned on Standardized Vocabularies
• SNOMED and MedDRA provide useful standards to harmonize data, with minimal information loss in translation from ICD‐9‐CM
• Use of multiple standardized drug vocabularies can improve the quality of observational analysis
35
OBSERVATIONAL MEDICAL
OUTCOMES
PARTNERSHIP
Example queries for many use cases
http://vocabqueries.omop.org/