OHDSI Home | Forums | Wiki | Github

Hemonc.org vs ATC for finding Cancer Drugs

I am beginning to use the new Hemonc.org vocabulary recently added to the OMOP vocabulary. It seems it has wider coverage of Oncology drugs than ATC. I am posting my SQL here to get feedback on if I am doing anything wrong. In the data set I am running against, ATC finds 79 RxNorm ingredients. Hemonc.org finds 121 RxNorm ingredients. Here is my SQL:

ATC

SELECT c4.concept_name
     , COUNT(DISTINCT de.person_id) unique_persons
FROM drug_exposure de JOIN concept c3               ON de.drug_concept_id = c3.concept_id
                           JOIN concept_ancestor ca2     ON c3.concept_id = ca2.descendant_concept_id
                           JOIN concept c4               ON ca2.ancestor_concept_id = c4.concept_id AND c4.concept_class_id = 'Ingredient'
WHERE drug_concept_id IN(
  SELECT c2.concept_id
  FROM concept_ancestor ca1 JOIN concept c1              ON ca1.ancestor_concept_id = c1.concept_id
                                 JOIN concept c2              ON ca1.descendant_concept_id = c2.concept_id
  WHERE ca1.ancestor_concept_id IN(
    21601387 --ANTINEOPLASTIC AGENTS
  )
)
GROUP BY c4.concept_name
ORDER BY COUNT(DISTINCT de.person_id) DESC

Hemoc.org

SELECT c4.concept_name
     , COUNT(DISTINCT de.person_id) unique_persons
FROM drug_exposure de JOIN concept c3               ON de.drug_concept_id = c3.concept_id
                           JOIN concept_ancestor ca2     ON c3.concept_id = ca2.descendant_concept_id
                           JOIN concept c4               ON ca2.ancestor_concept_id = c4.concept_id AND c4.concept_class_id = 'Ingredient'
WHERE drug_concept_id IN(
  SELECT c2.concept_id
  FROM concept_ancestor ca1 JOIN concept c1              ON ca1.ancestor_concept_id = c1.concept_id
                                 JOIN concept c2              ON ca1.descendant_concept_id = c2.concept_id
  WHERE ca1.ancestor_concept_id IN(
      35807188  --Chemotherapeutic
    , 35807205  --Endocrine therapeutic
    , 35807267  --Enzyme
    , 35807277  --Hypomethylating agent
    , 35807493  --Immunosuppresant
    , 35807335  --Immunosuppressant
    , 35807189  --Immunotherapeutic
  )
)
AND EXISTS(
  SELECT 1
  FROM omop.concept_relationship cr1
  WHERE c4.concept_id = cr1.concept_id_1 AND cr1.relationship_id IN('Rx antineopl of', 'Rx immunosuppr of')
)
GROUP BY c4.concept_name
ORDER BY COUNT(DISTINCT de.person_id) DESC
1 Like
t