[prev in list] [next in list] [prev in thread] [next in thread] 

List:       sas-l
Subject:    Re: How to map icd10 diagnoses back to icd9 ? Particular manipulation due to existing code and struc
From:       Arthur Tabachneck <art () ANALYSTFINDER ! COM>
Date:       2015-12-31 18:24:28
Message-ID: 9327445354872405.WA.artanalystfinder.com () listserv ! uga ! edu
[Download RAW message or body]

Irin,

Yevgeniy was definitely right. Try the following instead:

data long (keep=icd9 icd10);
  set cwalk_wide;
  array _in(*) $ icd10:;
  i=1;
  do while (i le dim(_in));
    if not missing(_in{i}) then do;
      icd10=_in(i);
      output;
      i+1;
    end;
    else i=dim(_in)+1;
  end;
run;

proc sort data=long;
  by icd10 icd9;
run;

proc transpose data=long
               out=cwalk_wide (drop=_:)
               prefix=icdnine;
  var icd9;
  by icd10;
run;

/*The following inserted so that the program*/
/*will run. Since the objective is to convert*/
/*a maximum of 26 codes into a maximum of*/
/*26 codes, that can not be achieved if any*/
/*of the codes map to more than 26 icd9 codes*/

data cwalk_wide;
  set cwalk_wide (keep=icd10 icdnine1-icdnine4);
run;

data ctrl (keep=start label fmtname type);
  retain fmtname '$cw9210c'
         type 'c'
         maxlablen 200
         maxselen 200
    ;
  set cwalk_wide (rename=(icd10=start));
  label=catx(',',of icdnine:);
run;

proc format library=work cntlin=ctrl;
run;

data have;
  infile cards truncover;
  input id (icd1-icd26) ($);
  cards;
1 0041 S75911S I7774
2 S92333A 304 0041
3 304 C969
;

data want (drop=in_: i);
  set have (rename=(icd1-icd26=in_icd1-in_icd26));
  length icd1-icd26 $200;
  array _in(*) $ in_icd1-in_icd26;
  array _out(26) $200. icd1-icd26;
  i=1;
  j=1;
  do while (i le dim(_in));
    if not missing(_in{i}) then do;
      k=1;
      hold=put(scan(_in{i},k,','),$cw9210c.);
      do while (scan(hold,k,',') ne '');
        _out{j}=scan(hold,k,',');
        j+1;
        k+1;
      end;
      i+1;
    end;
    else i=dim(_in)+1;
  end;
run;

Art, CEO, AnalystFinder.com
---------
On Thu, 31 Dec 2015 16:28:06 +0000, Irin later <irinfigvam@YAHOO.COM> wrote:

> I see... Now I tested with my own crosswalk
> 
> data cwalk_wide(drop=CodeType MapStatusID);
> set walk.icd10_wtxwalk;
> run;
> 
> /*The above cwalk_wide should look like our crosswalk file*/
> 
> data long (keep=icd9 icd10);
> set cwalk_wide;
> array _in(*) $ icd10:;
> i=1;
> do while (i le dim(_in) and not missing(_in{i}));
> icd10=_in(i);
> output;
> i+1;
> end;
> run;
> 
> and  the following error log.....
> 
> ERROR: Array subscript out of range at line 188 column 43.
> icd9=688 ICD101=0UT90ZZ ICD102=0UTC0ZZ ICD103=0UT20ZZ ICD104=0UT70ZZ ICD105=0UTG0ZZ \
> ICD106=0TTB0ZZ ICD107=0TTD0ZZ ICD108=0DTN0ZZ ICD109=0DTP0ZZ i=10 icd10=0DTP0ZZ \
> _ERROR_=1 _N_=74446 
> Irin
> 
> --------------------------------------------
> On Thu, 12/31/15, Arthur Tabachneck <art@ANALYSTFINDER.COM> wrote:
> 
> Subject: Re: How to map icd10 diagnoses back to icd9 ? Particular manipulation due \
>                 to existing code and structure
> To: SAS-L@LISTSERV.UGA.EDU, irinfigvam@YAHOO.COM
> Date: Thursday, December 31, 2015, 11:10 AM
> 
> Irin,
> 
> The code between
> /*Create a file that looks like Irin's file*/
> and
> /*The above cwalk_wide should look like Irin's file*/
> 
> is irrelevant to you! It was only included to rearrange the
> file that Mark provided to match the file that you have.
> 
> Art
> -----------
> On Thu, 31 Dec 2015 15:25:44 +0000, Irin later <irinfigvam@YAHOO.COM>
> wrote:
> 
> > Art,
> > 
> > Did you mean "by icd101-icd109"   in the
> following   piece of code and further? I am asking
> because crosswalk does not contain icd10. It contains icd9
> and icd101-109.   
> > 
> > proc sort data=crosswalk nodupkey;
> > by icd9 icd10;
> > run;
> > 
> > SAS 
> > --------------------------------------------
> > On Wed, 12/30/15, Arthur Tabachneck <art@ANALYSTFINDER.COM>
> wrote:
> > 
> > Subject: Re: How to map icd10 diagnoses back to icd9 ?
> Particular manipulation due to existing code and structure
> > To: SAS-L@LISTSERV.UGA.EDU
> > Date: Wednesday, December 30, 2015, 2:25 PM
> > 
> > Irin,
> > 
> > You may have to modify some of the following if the
> > conversion results in more than 26 icd codes. That is
> your
> > original stated limit, thus I wrote the code with that
> limit
> > in mind.
> > 
> > /*Create a file that looks like Irin's file*/
> > data crosswalk (drop=dummy);
> > infile "c:\art\2016_I9gem.txt";
> > input icd9 $ icd10 $ dummy;
> > run;
> > 
> > proc sort data=crosswalk nodupkey;
> > by icd9 icd10;
> > run;
> > 
> > proc transpose data=crosswalk
> > 
> > out=cwalk_wide (drop=_:)
> > 
> > prefix=icd10;
> > var icd10;
> > by icd9;
> > run;
> > 
> > data cwalk_wide;
> > set cwalk_wide (keep=icd9 icd101-icd109);
> > run;
> > 
> > /*The above cwalk_wide should look like Irin's file*/
> > 
> > data long (keep=icd9 icd10);
> > set cwalk_wide;
> > array _in(*) $ icd10:;
> > i=1;
> > do while (i le dim(_in) and not missing(_in{i}));
> > icd10=_in(i);
> > output;
> > i+1;
> > end;
> > run;
> > 
> > proc sort data=long;
> > by icd10 icd9;
> > run;
> > 
> > proc transpose data=long
> > 
> > out=cwalk_wide (drop=_:)
> > 
> > prefix=icdnine;
> > var icd9;
> > by icd10;
> > run;
> > 
> > /*The following inserted so that the program*/
> > /*will run. Since the objective is to convert*/
> > /*a maximum of 26 codes into a maximum of*/
> > /*26 codes, that can not be achieved if any*/
> > /*of the codes map to more than 26 icd9 codes*/
> > 
> > data cwalk_wide;
> > set cwalk_wide (keep=icd10 icdnine1-icdnine4);
> > run;
> > 
> > data ctrl (keep=start label fmtname type);
> > retain fmtname '$cw9210c'
> > type 'c'
> > maxlablen 200
> > maxselen 200
> > ;
> > set cwalk_wide (rename=(icd10=start));
> > label=catx(',',of icdnine:);
> > run;
> > 
> > proc format library=work cntlin=ctrl;
> > run;
> > 
> > data have;
> > infile cards truncover;
> > input id (icd1-icd26) ($);
> > cards;
> > 1 0041 S75911S I7774
> > 2 S92333A 304 0041
> > 3 304 C969
> > ;
> > 
> > data want (drop=in_: i);
> > set have (rename=(icd1-icd26=in_icd1-in_icd26));
> > length icd1-icd26 $200;
> > array _in(*) $ in_icd1-in_icd26;
> > array _out(26) $200. icd1-icd26;
> > i=1;
> > j=1;
> > do while (i le dim(_in) and not missing(_in{i}));
> > k=1;
> > hold=put(scan(_in{i},k,','),$cw9210c.);
> > do while (scan(hold,k,',') ne '');
> > _out{j}=scan(hold,k,',');
> > j+1;
> > k+1;
> > end;
> > i+1;
> > end;
> > run;
> > 
> > 
> > Hope that helps,
> > Art, CEO, AnalystFinder.com
> > ---------
> > On Wed, 30 Dec 2015 15:11:56 +0000, Irin later <irinfigvam@YAHOO.COM>
> > wrote:
> > 
> > > Art,
> > > 
> > > ...and actually answering your last question "
> there are
> > some ICD9   codes      that have up to 425
> > ICD10 equivalents.      What do you want to do
> > in such cases? Of course, with your   crosswalk, you
> may
> > not run into that problem...."
> > > 
> > > We just started to get icd10 code. So far hopefully
> it
> > is not a lot yet. As for the purpose of this
> particularly
> > monthly processing, I believe it is just 
> > > a temporary decision for a couple of months in
> order to
> > continue running this huge programming code.
> > > 
> > > Thank you again,
> > > Irin
> > > --------------------------------------------
> > > On Wed, 12/30/15, Irin later <irinfigvam@yahoo.com>
> > wrote:
> > > 
> > > Subject: Re: How to map icd10 diagnoses back to
> icd9 ?
> > Particular manipulation due to existing code and
> structure
> > > To: SAS-L@LISTSERV.UGA.EDU,
> > "Arthur Tabachneck" <art@ANALYSTFINDER.COM>
> > > Date: Wednesday, December 30, 2015, 10:03 AM
> > > 
> > > Art,
> > > 
> > > Thank you for your question. I believe that the
> > company
> > > crosswalk (created for by clinicists/reviewers)
> for
> > > converting icd9 diag code into icd10   and back(?)
> is
> > > unique   with all possible   ICD9 and ICD10 diag
> > > codes   matrix (icd101-icd109) for converting one
> icd9
> > > to many icd10 codes (and back?) . It looks like
> the
> > > following sample and has 193758 records and 10
> > columns:
> > > 
> > > Proc sort nodupkey showed the # of unique  
> icd9=16855
> > > 
> > > 
> > > Icd9            icd101     
> > > icd102         icd103        
> > > icd104      icd105  
> > > icd106  
> > > icd107      icd108  
> > > icd109
> > > 
> > > 0041            A031
> > > 0041            NoPCS
> > > 
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0B110F4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0B110Z4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0B113F4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0B113Z4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0B114F4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0B114Z4
> > > 
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0GTG0ZZ     
> > > 0B110F4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0GTG0ZZ     
> > > 0B110Z4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0GTG0ZZ     
> > > 0B113F4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0GTG0ZZ     
> > > 0B113Z4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0GTG0ZZ     
> > > 0B114F4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0GTG0ZZ     
> > > 0B114Z4
> > > 304               0CTS0ZZ  
> > > 0CTS0ZZ      0GTG0ZZ   
> > > .
> > > 
> > > Thank you!
> > > 
> > > Irin
> > > 
> > > 
> > > 
> > > --------------------------------------------
> > > On Wed, 12/30/15, Arthur Tabachneck <art@ANALYSTFINDER.COM>
> > > wrote:
> > > 
> > > Subject: Re: How to map icd10 diagnoses back to
> > icd9 ?
> > > Particular manipulation due to existing code and
> > structure
> > > To: SAS-L@LISTSERV.UGA.EDU,
> > > irinfigvam@YAHOO.COM
> > > Date: Wednesday, December 30, 2015, 9:25 AM
> > > 
> > > Irin,
> > > 
> > > Then I have another question for you.
> > > 
> > > If your crosswalk is the same as Mark's
> crosswalk
> > then,
> > > while most are one-to-one, there are some ICD10
> > codes that
> > > have as many as 553 ICD9 equivalents. The
> > situation is
> > > also
> > > confronted going the other way as there are
> some
> > ICD9
> > > codes
> > > that have up to 425 ICD10 equivalents.
> > > 
> > > What do you want to do in such cases? Of
> course,
> > with your
> > > crosswalk, you may not run into that problem.
> Do
> > you know
> > > what the maximum number of ICD9 codes a single
> > ICD10 code
> > > can translate to in your data?
> > > 
> > > Art
> > > ---------
> > > On Wed, 30 Dec 2015 12:17:43 +0000, Irin later
> > <irinfigvam@YAHOO.COM>
> > > wrote:
> > > 
> > > > Art,
> > > > Yes, in this case I need one to many. It
> > supposed to
> > > be
> > > a temporary decision. The thing is that we
> > already started
> > > to get icd10 while monthly processing is a
> > cumbersome
> > > code.
> > > Now , at the very beginning of the processing I
> > need to
> > > map
> > > newly coming icd10 to icd 9's      in
> particular
> > table
> > > dx-26
> > > in order huge program work as it is.
> > > > In other words, it is mostly has icd9
> values
> > and I
> > > need newky coming icd10 (minor at this time) to
> > be mapped
> > > back to icd9 . One to many as needed
> > > > Thank you!
> > > > Irin
> > > > 
> > > > 
> > > > From: Arthur Tabachneck <art@ANALYSTFINDER.COM>
> > > > To: SAS-L@LISTSERV.UGA.EDU
> > > 
> > > > Sent: Wednesday, December 30, 2015 12:15
> AM
> > > > Subject: Re: How to map icd10 diagnoses
> back
> > to icd9
> > > ?
> > > Particular manipulation due to existing code
> and
> > structure
> > > > 
> > > > Irin,
> > > > 
> > > > Before   I suggest how you modify the code,
> I
> > have a
> > > question for you.
> > > > 
> > > > I presume that you have cases where the
> ICD10
> > code
> > > maps
> > > to multiple ICD9 codes. What do you want to do
> > with such
> > > cases?
> > > > 
> > > > e.g., if an ICD10 code maps to 3 ICD9
> codes,
> > do you
> > > want
> > > to replace it with 3 entries?
> > > > 
> > > > Art, CEO, AnalystFinder.com
> > > > --------
> > > > On Tue, 29 Dec 2015 20:37:31 +0000, Irin
> > later <irinfigvam@YAHOO.COM>
> > > wrote:
> > > > 
> > > > > Arthur,
> > > > > 
> > > > > I am actually trying your   way but I
> > actually  
> > > face an obstacle   as   within crosswalk file I
> > do not
> > > have   a variable icd10. Instead I have icd101
> > icd102
> > > icd103.........icd109.
> > > > > So far when I run proc sort
> > data=crosswalk
> > > nodupkey;
> > > by icd9 icd10 system doesn not find icd10. 
> > > > > 
> > > > > 
> > > > > Can   I add all this serie
> > icd101-icd109?  
> > > Acctually I will face problem with      rename
> > > =(icd10=start) below AS WELL:
> > > > > data ctrl (keep=start label fmtname
> > type);
> > > > > retain fmtname '$cw9210c'
> > > > > type 'c'
> > > > > maxlablen 200
> > > > > maxselen 200
> > > > > ;
> > > > > set cwalk_wide
> > (rename=(icd10=start));
> > > > > label=catx(',',of icdnine:);
> > > > > run;
> > > > > 
> > > > > 
> > > > > i AM Just wonder if it would work if I
> > replace
> > > icd10
> > > with multiple   rename   like rename
> > =(icd101=start1)  
> > > icd102=start2   icd103...icd109??
> > > > > 
> > > > > Thank you in advance!
> > > > > 
> > > > > Irin 
> > > 
> > > > --------------------------------------------
> > > > > On Fri, 12/25/15, Arthur Tabachneck
> > <art@ANALYSTFINDER.COM>
> > > wrote:
> > > > > 
> > > > > Subject: Re: How to map icd10
> diagnoses
> > back to
> > > icd9 ? Particular manipulation due to existing
> > code and
> > > structure
> > > > > To: SAS-L@LISTSERV.UGA.EDU
> > > > > Date: Friday, December 25, 2015, 9:13
> > PM
> > > > > 
> > > > > Tom,
> > > > > 
> > > > > I've been thinking more about your
> > comment and
> > > still think a
> > > > > format could work. Irin will have to
> > adjust her
> > > (and the
> > > > > following) code if more than 26 codes
> > result, but
> > > the
> > > > > following does account for multiple
> > icd10 code to
> > > icd9 code
> > > > > conversions.
> > > > > 
> > > > > Most of the codes are one to one, but
> > there are
> > > some that
> > > > > are 12 to 1.
> > > > > 
> > > > > I used Mark's crosswalk as an
> example.  
> > The
> > > first
> > > sort
> > > > > with nodupkey was used as there are
> > duplicate
> > > icd9,icd10
> > > > > combinations in his file:
> > > > > 
> > > > > data crosswalk (drop=dummy);
> > > > > infile "c:\art\2016_I10gem.txt";
> > > > > input icd10 $ icd9 $ dummy;
> > > > > run;
> > > > > 
> > > > > proc sort data=crosswalk nodupkey;
> > > > > by icd9 icd10;
> > > > > run;
> > > > > 
> > > > > proc sort data=crosswalk;
> > > > > by icd10 icd9;
> > > > > run;
> > > > > 
> > > > > proc transpose data=crosswalk
> > > > > 
> > > > > out=cwalk_wide (drop=_:)
> > > > > 
> > > > > prefix=icdnine;
> > > > > var icd9;
> > > > > by icd10;
> > > > > run;
> > > > > 
> > > > > data ctrl (keep=start label fmtname
> > type);
> > > > > retain fmtname '$cw9210c'
> > > > > type 'c'
> > > > > maxlablen 200
> > > > > maxselen 200
> > > > > ;
> > > > > set cwalk_wide
> > (rename=(icd10=start));
> > > > > label=catx(',',of icdnine:);
> > > > > run;
> > > > > 
> > > > > proc format library=work cntlin=ctrl;
> > > > > run;
> > > > > 
> > > > > data have;
> > > > > infile cards truncover;
> > > > > input id (icd1-icd26) ($);
> > > > > cards;
> > > > > 1 0041 S75911S I7774
> > > > > 2 S92333A 304 0041
> > > > > 3 304 C969
> > > > > ;
> > > > > 
> > > > > data want (drop=in_: i);
> > > > > set have
> > > (rename=(icd1-icd26=in_icd1-in_icd26));
> > > > > length icd1-icd26 $200;
> > > > > array _in(*) $ in_icd1-in_icd26;
> > > > > array _out(26) $200. icd1-icd26;
> > > > > i=1;
> > > > > j=1;
> > > > > do while (i le dim(_in) and not
> > > missing(_in{i}));
> > > > > k=1;
> > > > > 
> > hold=put(scan(_in{i},k,','),$cw9210c.);
> > > > > do while (scan(hold,k,',') ne
> > '');
> > > > > _out{j}=scan(hold,k,',');
> > > > > j+1;
> > > > > k+1;
> > > > > end;
> > > > > i+1;
> > > > > end;
> > > > > run;
> > > > > 
> > > > > Art, CEO, AnalystFinder.com
> > > > > -------
> > > > > On Fri, 25 Dec 2015 10:21:19 -0500,
> Tom
> > Abernathy
> > > <tom.abernathy@GMAIL.COM>
> > > > > wrote:
> > > > > 
> > > > > > Unfortunately the GEM cross walk
> > tables
> > > include
> > > 1 to
> > > > > many mappings that are not appropriate
> > for a
> > > FORMAT.
> > > > > > You might see less of these in the
> > ICD10 to
> > > ICD9 mapping
> > > > > that the original poster is trying to
> > perform
> > > (rather than
> > > > > the reverse ICD9 to ICD10 maaping),
> but
> > I believe
> > > they will
> > > > > still exist.
> > > > > > 
> > > > > > 
> > > > > > On Thu, 24 Dec 2015 16:44:15
> -0500,
> > Arthur
> > > Tabachneck
> > > > > <art@ANALYSTFINDER.COM>
> > > > > wrote:
> > > > > > 
> > > > > > > Irin,
> > > > > > > 
> > > > > > > I've never worked with icd
> > codes, but it
> > > sounds like
> > > > > you simply want to create an apply a
> > format.
> > > > > > > 
> > > > > > > If your crosswalk has icd10
> > codes that
> > > crosswalk
> > > > > over to multiple icd9 codes, that will
> > pose a
> > > problem you'll
> > > > > have to decide how to handle.
> > > > > > > 
> > > > > > > Regardless, the following
> might
> > be your
> > > solution or
> > > > > at least close to it:
> > > > > > > 
> > > > > > > data ctrl (keep=start label
> > fmtname
> > > type);
> > > > > > > set cwalk_wide
> > (rename=(icd9=label));
> > > > > > > retain fmtname '$cw9210c'
> > type 'c';
> > > > > > > array _icd10{*} icd:;
> > > > > > > i=1;
> > > > > > > do while (i le dim(_icd10)
> > and not
> > > > > missing(_icd10{i}));
> > > > > > > start=_icd10{i};
> > > > > > > i+1;
> > > > > > > output;
> > > > > > > end;
> > > > > > > run;
> > > > > > > 
> > > > > > > proc format library=work
> > cntlin=ctrl;
> > > > > > > run;
> > > > > > > 
> > > > > > > data have;
> > > > > > > infile cards truncover;
> > > > > > > input id (icd1 icd2 icd3)
> > ($);
> > > > > > > cards;
> > > > > > > 1 0041 S75911S I7774
> > > > > > > 2 S92333A 304 0041
> > > > > > > 3 304
> > > > > > > ;
> > > > > > > 
> > > > > > > data want (drop=i);
> > > > > > > set have;
> > > > > > > array _icd{*} icd:;
> > > > > > > i=1;
> > > > > > > do while (i le dim(_icd)
> and
> > not
> > > > > missing(_icd{i}));
> > > > > > > 
> > _icd{i}=put(_icd{i},$cw9210c8.);
> > > > > > > i+1;
> > > > > > > end;
> > > > > > > run;
> > > > > > > 
> > > > > > > HTH,
> > > > > > > Art, CEO, AnalystFinder.com
> > > > > > > --------
> > > > > > > On Thu, 24 Dec 2015 20:03:26
> > +0000, Irin
> > > later
> > > > > <irinfigvam@YAHOO.COM>
> > > > > wrote:
> > > > > > > 
> > > > > > > > Art,
> > > > > > > > 
> > > > > > > > I am sorry for the
> > misleading subject
> > > line  
> > > > > (I tried to adjust the subject line at
> > the
> > > moment).
> > > 
> > > > > > > > 
> > > > > > > > Unfortunately this is not
> > about the
> > > concept. My
> > > > > problem is about manipulation between
> > particular
> > > crosswork
> > > > > table and an existing table. Actually
> > about vedry
> > > specific
> > > > > need.
> > > > > 
> > > 
> > 
> > > > --------------------------------------------
> > > > > > > > On Thu, 12/24/15, Arthur
> > Tabachneck
> > > <art@ANALYSTFINDER.COM>
> > > > > wrote:
> > > > > > > > 
> > > > > > > > Subject: Re: How to map
> > icd10
> > > diagnoses back to
> > > > > icd9 ?
> > > > > > > > To: SAS-L@LISTSERV.UGA.EDU
> > > > > > > > Date: Thursday, December
> > 24, 2015,
> > > 2:54 PM
> > > > > > > > 
> > > > > > > > Irin,
> > > > > > > > 
> > > > > > > > Didn't Mark already
> provide
> > such a
> > > crosswalk in
> > > > > one of the
> > > > > > > > links he provided in
> > October,
> > > namely:
> > > > > > > > https://www.cms.gov/Medicare/Coding/ICD10/2016-ICD-10-CM-and-GEMs.html
> > > > > > > >  ?
> > > > > > > > 
> > > > > > > > His link included files
> > mapping
> > > icd-9
> > > to
> > > > > icd-10, as well as
> > > > > > > > icd-10 to icd-9.
> > > > > > > > 
> > > > > > > > Art
> > > > > > > > -------
> > > > > > > > On Thu, 24 Dec 2015
> > 17:05:01 +0000,
> > > Irin later
> > > > > <irinfigvam@YAHOO.COM>
> > > > > > > > wrote:
> > > > > > > > 
> > > > > > > > > Dear experts,
> > > > > > > > > 
> > > > > > > > > 1. I have DX_26
> > dataset
> > > extracted
> > > from
> > > > > corporate DW. The
> > > > > > > > thing is that since
> October
> > 2015
> > > corporate   DW
> > > > > started
> > > > > > > > to get ICD10 diag
> claims  
> > .
> > > Currently
> > > existing
> > > > > DW table
> > > > > > > > contains mostly   icd9
> > values yet
> > > ...as well
> > > > > as
> > > > > > > > new   icd10 diags
> values.In
> > other
> > > words, it is
> > > > > a mixture
> > > > > > > > of icd9 and icd10 values.
> > > > > > > > > For example I have
> > icd9=0041 and
> > > > > > > > icd10=0CTS0ZZ      under
> > icd1
> > > > > > > > > I have icd9=304 and
> > > icd10=0B113F4
> > > under
> > > > > icd2 and etc
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > id              
> icd1  
> > 
> > > > > > > > icd2        
> > 
> > > > > > > > icd3     
> > > > > > > > 
> > > > > 
> > > 
> > ...............................................icd26
> > > > > > > > > 
> > > > > > > > > 1           
> > > > > > > > 0041              
> > > > > > > > 0B113F4      0B110F4
> > > > > > > > > 2           
> > > > > > > > 0CTS0ZZ      304  
> > 
> > > > > > > > 0041
> > > > > > > > > 3           
> 304
> > > > > > > > > 
> > > > > > > > > 2. I have  
> > ICD10_crosswork
> > > dataset with
> > > > > all
> > > > > > > > possible   ICD9 and ICD10
> > diag
> > > codes  
> > > matrix
> > > > > > > > (icd101-icd109)
> > > > > > > > > for converting icd9
> > diag code
> > > into
> > > icd10
> > > > > and back. It
> > > > > > > > looks like the following:
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > Icd9     
> > icd101     
> > > > > > > > icd102        
> icd103  
> > 
> > > > > > > > icd104      icd105  
> > > > > > > > icd106  
> > > > > > > > 
> icd107      icd108  
> > > > > > > > icd109
> > > > > > > > > 
> > > > > > > > > 0041            A031
> > > > > > > > > 0041            NoPCS
> > > > > > > > > 
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> 0B110F4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> 0B110Z4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> 0B113F4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> 0B113Z4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> 0B114F4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> 0B114Z4
> > > > > > > > > 
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> > 0GTG0ZZ     
> > > > > > > > 0B110F4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> > 0GTG0ZZ     
> > > > > > > > 0B110Z4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> > 0GTG0ZZ     
> > > > > > > > 0B113F4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> > 0GTG0ZZ     
> > > > > > > > 0B113Z4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> > 0GTG0ZZ     
> > > > > > > > 0B114F4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> > 0GTG0ZZ     
> > > > > > > > 0B114Z4
> > > > > > > > > 304        
> > 0CTS0ZZ  
> > > > > > > > 0CTS0ZZ     
> 0GTG0ZZ
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > ****
> > > > > > > > > For the purpose of
> > running some
> > > existing
> > > > > monthly
> > > > > > > > processing,   initially I
> > have to
> > > convert ICD10
> > > > > values
> > > > > > > > from the DX_26 dataset
> back
> > to the
> > > icd9 in
> > > > > order to be able
> > > > > > > > to handle with an
> existing
> > huge and
> > > cumbersome
> > > > > code
> > > > > > > > > 
> > > > > > > > > In other words, using
> > > ICD10_crosswork   I
> > > > > have to
> > > > > > > > create   a new datast
> > > DX_26_INTERMEDIATE  
> > > > > based on
> > > > > > > > DX_26 dataset.
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > How can I do it if it
> > is doable
> > > at
> > > all?  
> > > > > Could you
> > > > > > > > please help me with this
> > code?
> > > > > > > > > 
> > > > > > > > > Any help would
> greatly
> > > appreciated!
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > Irin
> > > > 
> > > > 
> 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic