Current Population Survey (CPS): Using the Parental Pointers

In order to better capture the living arrangements of children, the CPS began adding parental pointers in 2007 (variables pelnmom and pelndad).  These pointers allow researchers to identify children’s co-residential parents, even if they are not designated as the householder. The parental pointers, along with the spouse pointer (a_spouse) allow for estimates of children living in all types of parental arrangements even if neither parent is the householder.  Two additional variables (pemomtyp and pedadtyp) are included in the data which allow for the identification of the parent-child relationship: biological, step, or adoptive.  Further, these variables can be used to identify co-residential sibling relationships as biological, step, half, or adoptive.

This guide provides step-by-step instructions on SAS coding for the parental pointers.  In order to follow the steps you will need to download CPS data (2007 or newer).  A general overview of the CPS along with information on obtaining the data files is available on the Center for Family and Demographic Research (CFDR) website:/content/bgsu/en/academics/arts-and-sciences/center-for-family-demographic-research/help-resources-tools/data/current-population-survey.html.

Three sample households (listed below) will be followed throughout the guide for ease of demonstration.  Before starting, make sure that your data contain these original variables: fh_seq peridnum pelnmom pelndad a_age a_sex.  Note: if you are using data downloaded from the DataFerrett site, check to make sure peridnum is 22 characters (the sas command file from DataFerrett for imputing the data keeps only 21 characters – make the necessary changes to your command file).


libname CPS "R:\CFDR\CFDR\Sarah\CPS\Data";

data cps.cpsmar10; set cps.cpsmar10;


proc sort; by fh_seq;

proc print data = cps.cpsmar10 (firstobs = 1 obs = 100); var fh_seq peridnum pelnmom pelndad a_age a_sex; by fh_seq; run;