Healthcare

SOLVED

ICD Code Mapping for HEDIS

Andy_Katona
8 - Asteroid

Team - Has anyone had to or created a mapping in Alteryx  that would take for example a BMI value of 19 & assign an ICD code of Z68.1? The issue is that the mappings are in ranges by tenths.

 

So Taking a 23.1 & mapping to Z68.23. There is just a long list of codes that are very specific.

 

Example of Codes :

Code Sets.JPG

12 REPLIES 12
SGolnik
11 - Bolide
11 - Bolide

I haven't done anything with the ICD codes, but am very interested in what you are doing! Can you provide some additional context for the use case? Are you trying to create an app where one could enter the BMI and it would tell them which ICD code it would use? 

Andy_Katona
8 - Asteroid

Yes, that is what I am looking to develop. For example the provider is not permitted to submit the ICD codes or the EMR has custom codes. Yet, we have the BMI value (which there are 46 values). Thus if the "BMI = 19 or less" it should be listed as Z68.;1 but if it is 20. 8 it should be translated to Z68.20 & so on. Does that help? I have like 134K specific Codes I am working against but wont' need all of them. Yet, it would be nice to figure it out. :-)

SGolnik
11 - Bolide
11 - Bolide

 

I keep going back and forth with my answer on this! LOL.... one way is to create a data source with one column having all of the possible BMI's and the second column having which range that it goes in. I'm running short on time right now, but if no one else pipes up by tomorrow, I can do a sample workflow for you.

Andy_Katona
8 - Asteroid

Yes, I thought about the data source as well but that would be huge & difficult to manage. I am found this posted & going to see if I cam make this work. https://community.alteryx.com/t5/Alteryx-Knowledge-Base/Using-Conditional-Statements-to-Change-your-...

Andy_Katona
8 - Asteroid

This will work but I have to create 46 ELSEIF....LOL I want to see if there is a smarter way to do this. Suggestions?

 

IF [BMI] <= 19 THEN "Z68.1"
ELSEIF [BMI] >= 21 && [BMI] <=21.9 THEN "Z68.2"
ELSE "ERROR"
ENDIF

esegovia
7 - Meteor

You might find the mapping here: https://vsac.nlm.nih.gov/valuesets, but you'll have to create an UMLS account.

 

 

 

MarqueeCrew
20 - Arcturus
20 - Arcturus

how about ...

 

IF [BMI] <= 19	THEN 'Z68.1'	ELSE
'Z68.' + Left(ToString([BMI]),2)
ENDIF

will that help?

Alteryx ACE & Top Community Contributor

Chaos reigns within. Repent, reflect and restart. Order shall return.
Please Subscribe to my youTube channel.
Andy_Katona
8 - Asteroid

That may help:

IF [BMI] <= 19 THEN 'Z68.1' ELSE
'Z68.' + Left(ToString([BMI]),2)
ENDIF

 

Let me test this tomorrow. THANK YOU

Andy_Katona
8 - Asteroid

Thank you but I don't have a login to that site. I do have an excel sheet with the values. I am going to test the following tomorrow & see how close I can get. :

 

IF [BMI] <= 19 THEN 'Z68.1' ELSE
'Z68.' + Left(ToString([BMI]),2)
ENDIF

 

 

I appreciate everyone's help. If I get it figured out I will post it for re-use.