OHDSI Home | Forums | Wiki | Github

ICD diagnosis codes sometimes have an OMOP code with a different domain than the mapped OMOP code - how to handle?

Trying to understand how to ETL ICD diagnosis codes into OMOP. Many have a domain_id that is not Condition, which I understand. However, what happens when the domain_id IS Condition, but its mappings to a “standard concept” are NOT Condition?

Options:

  1. Add a row only in the domain of the standard concept mapping (e.g., Observation).
  2. Add a row in both the domain of the standard concept mapping AND the domain of the source concept_id (e.g., Condition). Presumably then the concept_id in this row would be 0.

The latter acknowledges that the source data had a row in a domain even though no standard mapping exists, though the former is more compact. Which is correct?

Thanks,
Jeff Klann

@jklann:

You are right. But this is wrong. The domain of the ICDs has to match their mapped Standard Concepts counterpart. Will fix. Not clear what happened.

On domains for mapped concepts, I suspect it is #1 (row only in the standard concept’s table), but I await more sage advice.

Christian and George are right. You add only one row to a CDM table that corresponds to a standard concept’s domain.
I’m guessing we’ve never got to massive domain change in ICD as people are used to seeing them as conditions. Sure enough, they should match SNOMED domains.

This (and many other problems) could be part of our “code pieces” in the CDM github here: https://github.com/OHDSI/CommonDataModel/tree/master/CodeExcerpts

In our ETL, we try in stage1 to map everthing to the source value and then do the maps-to step. in stage2

I think the ETL code from stage1 to stage2 can be “standardized” for diagnoses coming in as ICD9 or ICD10. And can be a code-excerpt contribution.

This is a call to the community to think about their CodeExcerpts that they would like to contribute. Jeff, consider please sharing your experience with the ICD data loading. Perhaps via CodeExcerpts.

t