OHDSI Home | Forums | Wiki | Github

Mapping OMOP concept id from RxNorm Extension


Hello! My team is currently working to map drugs to OMOP standard vocabulary via RxNorm. In our dataset, however, there are a number of multi-ingredient drugs that could not be mapped to concept ids even though they are in the RxNorm extension vocab in the database. The reason is that we can’t find a way to go from the RxCUI provided by metamap to the concept_id from the OMOP version of the RxNorm extension. The only way we can think to do it right now is to use the string in the STR column to match the concept_name column of the concept table and then pull back the concept_id. Any thoughts on it this being a reasonable approach or other suggestions to get the OMOP concept_id from the RxNorm extension? Thanks for your help!

(Vojtech Huser) #2

RxNormExtension is not probably a vocabulary Metamap supports at the moment.

(Christian Reich) #3


Not sure I understand. You say you have the RxCui. You can just look it up in the CONCEPT table where your RxCUI=concept_code and vocabulary_id=‘RxNorm’. That’s it.

Or are you saying we are missing RxCUIs (in the concept_code field)?

RxNorm Extension has nothing to do with it. Those are for drug information in market outside the USA. If you have RxNorm RxCUIs you don’t need RxNorm Extension by definition.

(Anna Ostropolets) #4

I actually got it differently: there are some drugs, metamap can’t map them, but the drugs with similar names exist in RxE. If this is the case, string matching should work. If the names aren’t exactly the same then I’d suggest our typical approach of breaking drugs down into ingredients, forms and brand names and use an automated approach to map them.


xaa-subset-to-100-expert-filtered-mapping-workbook.xlsx (152.4 KB)

I believe we may be missing the RxCUIs. We tested a sample using the method you suggested, however, came up with nothing. I have attached the excel sheet from which we are working from. Column H is the RxCUI we wish to map with column A being the utterance found within the our original data set and column I being its string match.

(Denys Kaduk) #6

According to our principles of creation Standardized Vocabularies, we don’t keep combination of ingredients from RxNorm (file that you share consist only them). You can use our documentation for help and better understanding design of vocabularies :slight_smile:

(Rkboyce) #7

Thank you for your reply Denys. I see that you are correct that it is clearly stated that “RxNorm’s MIN (Multiple Ingredients) are not implemented.” We somehow missed that.

@bas172 - It looks like can translate these rxnorm MIN cases to something in the standard vocabulary that can ultimately be mapped to RxNorm. E.g., ‘Sulfamethoxazole / Trimethoprim’ (rxcui MIN 10831) maps to ATC J01EE01 that is in the standard vocab under concept_id 21602961. I will have to run a query against the metathesaurus to pull out ATC codes where I can.

Do folks have other suggestions?

(Anna Ostropolets) #8

I wouldn’t suggest using ATC. First, the current coverage isn’t comprehensive, so you will miss some of the concepts. Second, you don’t really want drugs. What you need is ingredients. Since the names that you have are standardized, you can just parse them, get the names of the separate ingredients and map them by string match. Say, Acetaminophen / Codeine splits into Acetaminophen and Codeine, which have the exact counterparts in RxNorm ingredients.