Updated translation tables

Hello! I’m looking for a crosswalk between OCC1990 (or OCC1950) and the BLS’s current 2018 SOC system. I found IPUMS’s translation tables here, but the tables for both OCC variables only seem to go up to the 2008 scheme. Is there somewhere else I could get updated translation tables, or this crosswalk in particular?

Thanks so much!

Unfortunately, I don’t have an updated translation table to share with you; we have updated our internal crosswalk process for the harmonized occupation and industry variables in a way that no longer relies on the translation tables. However, you can create these crosswalks fairly easily using the IPUMS data extract system and a few lines of code. The first step is to create a data extract with the raw OCC variable and the harmonized variable(s) of interest (e.g., OCC1990); you can include all years in a single extract request or make one for each set of years and harmonized occupation measures of interest depending on how you like to organize your work. For each set of years, you then reduce your dataset to only the unique combinations of the raw and harmonized variable and use a list command to get the crosswalk (I have listed these twice below–the first is to include value labels which can be helpful in a quick gut-check of making sure things look as expected, the second is just for the numeric code-to-code crosswalk). For each set of years and harmonized occupation values in Stata, I would do something along the lines of:

preserve
keep if year >= 2003 & year <= 2010
contract occ occ1990
list
list, nolabel
restore

You didn’t specify which IPUMS dataset you are using, so I also want to note that the years that each underlying occupation scheme is applied varies between the CPS and ACS/decennial census data.

For your reference I am linking a working paper about updating OCC1990 to include the 2010 occupation codes and this BLS paper about the initial creation of OCC1990 outline the process that IPUMS uses for these overall. However, I think the key takeaway is that you can create these crosswalks directly between the year of interest and the harmonized variable using the harmonized output data instead of reading a lot of documentation and crosswalks between adjacent coding schemes.