DM 'CLE LOG; CLE OUT'; ******************************************************************** * Program name: SMOKE65.sas * Data source: 1965 NHIS PERSON PUBLIC USE DATA FILE * Date: DECEMBER 2008 * Programmer: Division of Health Interview Statistics\NCHS\CDC * Input: C:\NHIS1965.PERSONSX.sas7bdat [SAS data set created from the * 1965 CORE Person (person.dat) file] * Output: C:\NHIS1965\SMOKE65.sas7bdat [SAS dataset containing the 1965 CORE Person record PLUS a smoking status recode] * Note: All data files and SAS programs referenced below can be * accessed by going to the 'Guide for Data Users' on the * NHIS Tobacco Information website available via * http://www.cdc.gov/nchs/nhis.htm [Click on 'Special Topics' *********************************************************************; * * PRELIMINARY STEPS: * STEP 1: CREATE: Folder 'c:\nhis1965' on your c drive * STEP 2: SAVE: PERSON.exe in 'c:\nhis1965\' * STEP 3: CLICK: Double click on 'c:\nhis1965\PERSON.exe ' to extract ASCII file 'PERSON.dat' * STEP 4: COPY: PERSON.sas to 'c:\nhis1965\' * STEP 5: RUN: PERSON.sas (using PERSON.dat) to create SAS dataset PERSONSX.sas7bdat * NOTE CHANGE IN NAME FROM INPUT (PERSON) TO OUTPUT (PERSONSX) * STEP 6: GO TO: SMOKE65.sas (program below) * ********************************************************************************* ; options ls=96 ps=54 pageno=1 fmtsearch=(NHIS); *******************************************************************; LIBNAME NHIS "C:\NHIS1965"; LIBNAME LIBRARY "C:\NHIS1965"; TITLE1 "1965 Tobacco - Cigarette Smoking Status (lifetime) "; *****************************; PROC FORMAT LIB=lIBRARY; VALUE AGEX 0-16 = "0-16" 17-85 = "17-85"; PROC FORMAT LIB=lIBRARY; VALUE SMKSTAT 1 = "Never smoked" 2 = "Former smoker" 3 = "Present smoker" 4 = "Unknown"; DATA NHIS.SMOKE65 (RENAME=(AGE85=AGE)); SET NHIS.PERSONSX; IF (SMOKE100 = 1) THEN SELECT; WHEN (CIGNOW = ' ') SMKSTAT = 1; WHEN (CIGNOW = '00') SMKSTAT = 2; WHEN (CIGNOW = ' -' OR (CIGNOW >= '01' AND CIGNOW <= '99')) SMKSTAT = 3; WHEN (CIGNOW = '- ') /* ADULTS WHO REACHED THIS QUESTION (CIGNOW) HAD PREVIOUSLY ANSWERED "YES" TO QUESTION "DO YOU SMOKE NOW?" [SEE QUESTIONNAIRE: QUESTION 19a].HOWEVER, THIS VARIABLE IS NOT INCLUDED ON THE PUBLIC USE DATA FILE. ADULTS WHO SAID "DON'T KNOW" TO CIGNOW WERE CLASSIFIED AS CURRENT SMOKERS BECAUSE THEY HAD REPORTED BEING CURRENT SMOKERS IN Q 19a. */ SMKSTAT = 3; OTHERWISE ; END; ELSE IF (SMOKE100 = 2) THEN SMKSTAT = 1; ELSE IF (SMOKE100 = 3) THEN SMKSTAT = 4; ELSE; PROC FREQ DATA=NHIS.SMOKE65; WHERE AGE >=17 ; FORMAT SMKSTAT SMKSTAT. AGE AGEX.; TABLES AGE * SMOKE100 * CIGNOW * SMKSTAT / LIST MISSING; TITLE2 'QUALITY CONTROL FOR SMOKING STATUS RECODE: UNWEIGHTED'; RUN; PROC FREQ DATA=NHIS.SMOKE65; WHERE AGE >=17 ; FORMAT SMKSTAT SMKSTAT. AGE AGEX.; TABLES AGE * SMOKE100 * CIGNOW * SMKSTAT / LIST MISSING; WEIGHT WTFA; TITLE2 'QUALITY CONTROL FOR SMOKING STATUS RECODE: WEIGHTED'; RUN; PROC FREQ DATA=NHIS.SMOKE65; WHERE AGE >=18 AND SMKSTAT <4 ; /* AGES 18+, EXCLUDING MISSING SMOKING STATUS*/ FORMAT SMKSTAT SMKSTAT.; TABLES SMKSTAT * SEX; WEIGHT WTFA; TITLE2 'SMOKING STATUS, EXCLUDING UNKNOWNS (CRUDE)'; TITLE3 ' MATCHES ESTIMATES PUBLISHED HEALTH, UNITED STATES '; RUN;