CMS implemented the Hierarchical Condition Categories (HCC) model in 2004 to adjust capitation payments to Medicare Advantage plans for the health expenditure risk of their enrollees.
CMS' Risk Adjustment materials include a lot of information such as an
The 2012 Version 12 model expects two datafiles: PERSON and DIAG.
The variables needed in the PERSON dataset from the enrollment file are the following:
|HICNO||Character or Numeric||Beneficiary identifier|
|SEX||Character||Sex of a a beneficiary, "1"=male; "2"=female.|
|DOB||Date||Date of birth of a a beneficiary in SAS date format (January 1, 1960 = 0)|
|MCAID||Numeric||1 = Number of State Part B BUYIN (Medicaid) Months of base year > 0; 0 = Otherwise|
|NEMCAID||Numeric||1 = if a new enrollee and number of State Part B BUYIN (Medicaid) Months of base year > 0; 0 = Otherwise|
|OREC||Character||Original reason for entitlement, "0" - old age (OASI); "1" - disability (DIB); "2" - End Stage Renal Disease (ESRD); "3" - both DIB and ESRD|
CMS delivers the SAS code model files with ".TXT" extensions. By convention, SAS code usually has a ".sas" extension. The 2012 Version 12 main program V1212F1P.sas calls the main macro program V1212F1M.sas which in turn calls AGESEXNV.sas EDITICD9.sas V12H70L1.sas V12H70H.sas V12H70M.sas and SCOREVAR.sas
SAS can create new variables using formats. The models use the diagnosis codes to create Condition Categories (CCs). Then the program creates hierarchical condition codes by imposing hierarchies on the CCs. CMS delivers the formats as SAS transport files and (usually) also as a text file for reference. The SAS transport files can (and have been!) converted to regular SAS data files using SAS' PROC CIMPORT.
Made up input data files for the HCC 2016 Version 22 model are available too. The HCC 2016 22 model can use ICD9 or ICD10 codes.
Jean Roth set up the Risk Adjustment materials here to make it a bit easier to get familiar with the CMS Risk Adjustment software model materials.
|AGESEX*TXT||macros to create demographic variables used in regressions.|
|EDITICD9.TXT||macros to make age/sex edits on ICD9 codes|
|F*TXT||cross-walk from ICD9 codes to CC categories|
|SCOREVAR.TXT||macro to calculate SCORE variable|
|V12H70H.TXT||HCC HIERARCHIES: version 12 of HCCs only 70 CMS HCCs are included|
|V12H70L1.TXT||HCC version 12 labels for 70 HCCs|
|V12H70M.TXT||to assign additional CC for some ICD9s|
|Vnnnn?1M.TXT||Main SAS macro. Creates HCC and score variables for each person who is present in a person file.|
|R02X78H1.TXT||RXHCC hierarchies for RXHCCs that are included in software|
|R02X78M2.TXT||to assign multiple RXs for some ICD9s codes|
|R*P.TXT||Job Control Language (JCL) for IBM mainframe|
|R*EDIT*.TXT||age/sex edits on ICD9 codes|
|E?????1M.TXT||creates HCC and score variables for each person who is present in a person file.|
|E*P.TXT||Job Control Language (JCL) for IBM mainframe|
|E12H70H.TXT||HCC HIERARCHIES: version 12 of HCCs only 70 CMS HCCs are included|
The files beginning with "R" usually are RxHCC model files.
The files beginning with "E" usually are ESRD model files.
Job Control Language (JCL)
Program of All-Inclusive Care for the Elderly (PACE)
Contact Jean Roth firstname.lastname@example.org with questions, comments, or suggestions.
|Last Update: February 7, 2019||Created by Jean Roth August 2, 2014|