BookmarkSubscribeRSS Feed
graingerad12
Calcite | Level 5

Hello. I am doing an assignment in which I am supposed to extract and download CPS data from IPUMS site 

(https://cps.ipums.org/cps-action/variables/group). The variables in the data set are as follows:

 

 

Person Record

Core Demographic Variables

AGE Age

SEX Gender

RACE Race

MARST Marital status

Ethnicity/Nativity Variables

NATIVITY Foreign birthplace or parentage

HISPAN Hispanic origin

Education Variables

EDUC99 Educational attainment, 1990 categories

Work Variables

WKSWORK1 Weeks worked last year

UHRSWORK Usual hours worked per week last year
UNION Union status
PTWEEKS Weeks working part time last year

Income Variables

 INCWAGE Wage and salary income

 

I am having trouble executing a few steps that are required in the assignment. For example, it says to 

  1. Generate a new variable for years of education using EDUC99 variable.
  2. Generate a new variable for experience using AGE and EDUC99 variables.

What would the code look like in order to do that? Thanks!

1 REPLY 1
ballardw
Super User

First, have you created a SAS data set?

Also you will need to describe the contents of the variables you mention. I am guessing that the EDUC99 contains highest level of ecuation and looks something like "High School Graduate" or "GED", "Some college" "Trade school" "Bachelor'd Degree"  or similar. In which case you could make some assumptions and use IF-THEN-ELSE (or SELECT-WHEN) to do something like:

 

data want;

   set have;

   If Educ99 = "High School" then YearsEducation = 12;

   Else If Educ99 = "Bachelor's Degree" then YearsEducation=16;

 

/*and so on, but without exact values and a reasonable interpretation then that skeleton code is all I'm going suggest.*/

Run;

 

Without knowing what your specific uses of "experience" might be it gets a bit harder. Likely you could use values of your Age and YearsEducation combined with something like:

 

If age<18 and YearsEducation<12 then Experience = <some value>;

 

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 1 reply
  • 714 views
  • 0 likes
  • 2 in conversation