Handling missing DRUG_STRENGTH rows in dose calculation

Hi all,

I’m building a dose-calculation view (V_DRUG_DOSE_CALC) over DRUG_EXPOSURE joined to DRUG_STRENGTH, applying the six dose use cases at https://ohdsi.github.io/CommonDataModel/drug_dose.html. The arithmetic is straightforward; what I want a second opinion on is how to treat exposures where the join to DRUG_STRENGTH yields no row.

  1. Non-calculable concept: the source mapped to a concept class that carries no strength by design (Ingredient, Clinical Drug Form, Branded Drug Form). Strength is correctly absent, but the dose is non-calculable from the strength table alone.
  2. Unmapped source or drug_concept_id = 0; no row could exist.
  3. Ingredient genuinely not in the drug: absence is the correct answer.

here is a set of 10 random drugs I am not able to parse/calcule:

CONCEPT_ID CONCEPT_NAME
902415 Chikungunya, live attenuated vaccine, 0.5 mL, preservative free
19127901 {6 (ethinyl estradiol 0.03 MG / levonorgestrel 0.05 MG Oral Tablet) / 10 (ethinyl estradiol 0.03 MG / levonorgestrel 0.125 MG Oral Tablet) / 5 (ethinyl estradiol 0.04 MG / levonorgestrel 0.075 MG Oral Tablet) / 7 (inert ingredients 1 MG Oral Tablet) }…
42902216 {21 (ethinyl estradiol 0.03 MG / norethindrone acetate 1.5 MG Oral Tablet) } Pack
747530 {4 (0.8 ML adalimumab-aacf 50 MG/ML Auto-Injector) } Pack
42707706 {21 (ethinyl estradiol 0.035 MG / norethindrone 0.4 MG Oral Tablet) / 7 (inert ingredients 1 MG Oral Tablet) } Pack [Philith 28 Day]
46234547 {6 (0.2 ML interferon beta-1a 0.044 MG/ML Auto-Injector [Rebif]) / 6 (0.5 ML interferon beta-1a 0.044 MG/ML Auto-Injector [Rebif]) } Pack [Rebif Rebidose]
37499678 {28 (cenobamate 150 MG Oral Tablet [Xcopri]) / 28 (cenobamate 200 MG Oral Tablet) } Pack [Xcopri 350 MG Maintenance Pack]
40243126 {7 (ethinyl estradiol 0.01 MG Oral Tablet) / 84 (ethinyl estradiol 0.03 MG / levonorgestrel 0.15 MG Oral Tablet) } Pack [Camrese 91 Day]
37003570 {24 (ethinyl estradiol 0.02 MG / norethindrone acetate 1 MG Oral Capsule) / 4 (ferrous fumarate 75 MG Oral Capsule) } Pack [Gemmily 28 Day]
40231699 {7 (ethinyl estradiol 0.035 MG / norethindrone 0.5 MG Oral Tablet) / 7 (ethinyl estradiol 0.035 MG / norethindrone 0.75 MG Oral Tablet) / 7 (ethinyl estradiol 0.035 MG / norethindrone 1 MG Oral Tablet) / 7 (inert ingredients 1 MG Oral Tablet) } Pack [C…

Grateful for any second opinions or pointers to prior threads.

Regards

@esteban.correa:

Nice, let us know how it works. Are you attempting to do dose-dependency studies?

Not quite. For these, the quantity field becomes the dose. The unit is whatever the ingredient is given in DRUG_STRENGTH.

Correct. If you have no ingredient you are out of luck.

Vaccines are usually not dosed. At the most there is a pediatric dose and an adult dose and that is it. You can look it up on the product sheet.

This is a pack with contraceptives. It’s tricky. The dose depends on the day of the cycle, but overall you have 6 of the first product, 10 of the second, and so on. Same is true for the other packs (starting with “{”).

Hi there - I ran into this issue with the packs. There is a “secret” vocabulary table called PACK_CONTENT which is included in the ATHENA download but not in the CDM DDL. If you add it in, you’ll be able to join drugs to their pack components, and then to the DRUG_STRENGTH table.

1 Like

Thanks CR and Kathy,

Yes I am attenmpting to do dose-dependency study.

About the pack, I will use the table proposed by @katy-sadowski and let you know what happens.

Thanks for the amazing support
Regards

fyi,

We used PACK_CONTENT to map each Clinical Pack to its contained drug_concept_ids, then joined those component concepts to DRUG_STRENGTH.
This worked for the Clinical Packs covered by PACK_CONTENT and allowed us to calculate dose at the component/ingredient level instead of the pack concept level. I am still dealing with vaccines btw :slight_smile: