1 The SAS System 13:08 Sunday, November 21, 2004
NOTE: Copyright (c) 1999-2001 by SAS Institute Inc., Cary, NC, USA.
NOTE: SAS (r) Proprietary Software Release 8.2 (TS2M0)
Licensed to AGENCY FOR HEALTHCARE RESEARCH & QUALITY, Site 0040776001.
NOTE: This session is executing on the WIN_PRO platform.
1 options ls=120 ps=79 nodate;
2 ods noproctitle;
3 /************************************************************************************\
4 Program: c:\meps\prog\Example_L2.sas
5
6 Description: This example shows how to:
7 (1) Create SAS files from ASCII files
8 (2) Link 2001 MEPS to 1999 and 2000 NHIS
9 (3) Compare persons' status in NHIS with their status in MEPS
10
11 Input Files: c:\meps\data\nhisper99.dat (1999 NHIS Persons, renamed from PERSONSX)
12 c:\meps\data\nhisper00.dat (2000 NHIS Persons, renamed from PERSONSX)
13 c:\meps\data\nhmep01x.dat (NHIS-MEPS Link File - read in from diskette)
14 c:\meps\data\h60.sas7bdat (2001 MEPS Persons)
15 \************************************************************************************/
16
17 libname hc 'c:\meps\data';
NOTE: Libref HC was successfully assigned as follows:
Engine: V8
Physical Name: c:\meps\data
18
19 filename n99 'c:\meps\data\nhisper99.dat';
20 filename n00 'c:\meps\data\nhisper00.dat';
21 filename lnk 'c:\meps\data\nhmep01x.dat';
22
23 title 'AHRQ MEPS DATA USERS WORKSHOP (LINKING) -- NOV/DEC 2004';
24 title2 'NHIS-MEPS Link';
25
26 proc format;
27 value anylim
28 -9='-9 Not Ascer'
29 -1='-1 Inapp'
30 1='1 Yes'
31 2='2 No';
NOTE: Format ANYLIM has been output.
32 value sex 1='1 Male' 2='2 Female';
NOTE: Format SEX has been output.
33 value hstat
34 -9='-9 Not Ascer'
35 -8='-8 DK'
36 -7='-7 Refused'
37 -1='-1 Inapp'
38 1='1 Excellent'
39 2='2 Very Good'
40 3='3 Good'
41 4='4 Fair'
42 5='5 Poor'
43 7='7 Refused'
44 8='8 Not Ascer'
45 9='9 DK';
NOTE: Format HSTAT has been output.
46 value nhislim
47 1='1 Limited'
48 2='2 Not Limited'
49 3='3 Unknown'
50 7='7 Refused'
51 8='8 Not Ascer'
52 9='9 DK';
NOTE: Format NHISLIM has been output.
53 value nhischron
NOTE: The format name 'NHISCHRON' exceeds 8 characters. Only the first 8 characters will be used.
54 0='0 Not Limited'
55 1='1 Lim, 1+ Chron Cond'
56 2='2 Lim, Not Chron'
57 3='3 Lim, Chron Unk'
58 7='7 Refused'
59 8='8 Not Ascer'
60 9='9 DK';
NOTE: Format NHISCHRO has been output.
61 run;
2 The SAS System
62
63 title3 '2001 MEPS';
64 data meps01; set hc.h60(keep=dupersid anylim01 rthlth31 rthlth42 rthlth53
65 perwt01f varstr01 varpsu01); by dupersid; /* file is already sorted */
66 /* construct annual health status from last nonmissing round variable */
67 if rthlth53 > 0 then MEPSHSTAT=rthlth53;
68 else if rthlth42 > 0 then MEPSHSTAT=rthlth42;
69 else if rthlth31 > 0 then MEPSHSTAT=rthlth31;
70 label mepshstat='MEPS Health Status';
71 run;
NOTE: There were 33556 observations read from the data set HC.H60.
NOTE: The data set WORK.MEPS01 has 33556 observations and 9 variables.
72 proc contents position; run;
NOTE: The PROCEDURE CONTENTS printed page 1.
73 proc print data=_last_(obs=60); run;
NOTE: There were 60 observations read from the data set WORK.MEPS01.
NOTE: The PROCEDURE PRINT printed page 2.
74 title4 'Verify New Variable';
75 proc freq; tables
76 mepshstat
77 mepshstat*rthlth53*rthlth42*rthlth31/list missing;
78 format mepshstat rthlth53 rthlth42 rthlth31 hstat.;
79 run;
NOTE: There were 33556 observations read from the data set WORK.MEPS01.
NOTE: The PROCEDURE FREQ printed pages 3-6.
80
81 title3 'Link File';
82 data link; infile lnk; input
83 DUPERSID $1-8
84 HHX $9-14
85 PX $15-16
86 LINKFLAG 17
87 SRVY_YR 19-22;
88 run;
NOTE: The infile LNK is:
File Name=c:\meps\data\nhmep01x.dat,
RECFM=V,LRECL=256
NOTE: 33556 records were read from the infile LNK.
The minimum record length was 22.
The maximum record length was 22.
NOTE: The data set WORK.LINK has 33556 observations and 5 variables.
89 proc sort; by dupersid; run;
NOTE: There were 33556 observations read from the data set WORK.LINK.
NOTE: The data set WORK.LINK has 33556 observations and 5 variables.
90 proc contents position; run;
NOTE: The PROCEDURE CONTENTS printed page 7.
91 proc print data=_last_(obs=60); run;
NOTE: There were 60 observations read from the data set WORK.LINK.
NOTE: The PROCEDURE PRINT printed page 8.
92 proc freq; tables linkflag srvy_yr; run;
NOTE: There were 33556 observations read from the data set WORK.LINK.
NOTE: The PROCEDURE FREQ printed page 9.
93
94 title3 '1999 NHIS';
95 data nhis99; infile n99 missover lrecl=829; input
96 SRVY_YR 3-6
3 The SAS System
97 HHX $7-12
98 PX $15-16
99 SEX 18
100 AGE 19-20
101 NHISLIM 120
102 NHISCHRON 563
103 NHISHSTAT 564;
104 label
105 nhislim ='NHIS Any Limitation'
106 nhischron="NHIS Lim'n/Chronic Status"
107 nhishstat='NHIS Health Status';
108 run;
NOTE: The infile N99 is:
File Name=c:\meps\data\nhisper99.dat,
RECFM=V,LRECL=829
NOTE: 97059 records were read from the infile N99.
The minimum record length was 829.
The maximum record length was 829.
NOTE: The data set WORK.NHIS99 has 97059 observations and 8 variables.
109 proc sort; by hhx px srvy_yr; run;
NOTE: There were 97059 observations read from the data set WORK.NHIS99.
NOTE: The data set WORK.NHIS99 has 97059 observations and 8 variables.
110 proc contents position; run;
NOTE: The PROCEDURE CONTENTS printed page 10.
111 proc print data=_last_(obs=60); run;
NOTE: There were 60 observations read from the data set WORK.NHIS99.
NOTE: The PROCEDURE PRINT printed page 11.
112
113 title3 '2000 NHIS';
114 data nhis00; infile n00 missover lrecl=789; input
115 SRVY_YR 3-6
116 HHX $7-12
117 PX $15-16
118 SEX 18
119 AGE 19-20
120 NHISLIM 123
121 NHISCHRON 566
122 NHISHSTAT 567;
123 label
124 nhislim ='NHIS Any Limitation'
125 nhischron="NHIS Lim'n/Chronic Status"
126 nhishstat='NHIS Health Status';
127 run;
NOTE: The infile N00 is:
File Name=c:\meps\data\nhisper00.dat,
RECFM=V,LRECL=789
NOTE: 100618 records were read from the infile N00.
The minimum record length was 789.
The maximum record length was 789.
NOTE: The data set WORK.NHIS00 has 100618 observations and 8 variables.
128 proc sort; by hhx px srvy_yr; run;
NOTE: There were 100618 observations read from the data set WORK.NHIS00.
NOTE: The data set WORK.NHIS00 has 100618 observations and 8 variables.
129 proc contents position; run;
NOTE: The PROCEDURE CONTENTS printed page 12.
130 proc print data=_last_(obs=60); run;
NOTE: There were 60 observations read from the data set WORK.NHIS00.
NOTE: The PROCEDURE PRINT printed page 13.
131
4 The SAS System
132 title3 'Combine Link File & MEPS --> MEPSLINK';
133 data mepslink; merge
134 meps01(in=a drop=rthlth31 rthlth42 rthlth53)
135 link(in=b drop=linkflag); by dupersid; if a & b;
136 run;
NOTE: There were 33556 observations read from the data set WORK.MEPS01.
NOTE: There were 33556 observations read from the data set WORK.LINK.
NOTE: The data set WORK.MEPSLINK has 33556 observations and 9 variables.
137 proc sort; by hhx px srvy_yr; run;
NOTE: There were 33556 observations read from the data set WORK.MEPSLINK.
NOTE: The data set WORK.MEPSLINK has 33556 observations and 9 variables.
138 proc contents position; run;
NOTE: The PROCEDURE CONTENTS printed page 14.
139 proc print data=_last_(obs=60); run;
NOTE: There were 60 observations read from the data set WORK.MEPSLINK.
NOTE: The PROCEDURE PRINT printed page 15.
140
141 title3 'Combine 1999 & 2000 NHIS Files --> NHIS';
142 data nhis; merge
143 nhis99
144 nhis00; by hhx px srvy_yr;
145 run;
NOTE: There were 97059 observations read from the data set WORK.NHIS99.
NOTE: There were 100618 observations read from the data set WORK.NHIS00.
NOTE: The data set WORK.NHIS has 197677 observations and 8 variables.
146 proc contents position; run;
NOTE: The PROCEDURE CONTENTS printed page 16.
147 proc print data=_last_(obs=60); run;
NOTE: There were 60 observations read from the data set WORK.NHIS.
NOTE: The PROCEDURE PRINT printed page 17.
148
149 title3 'Combine MEPSLINK & NHIS --> TOTAL01';
150 data total01; merge
151 mepslink(in=a)
152 nhis(in=b); by hhx px srvy_yr; if a & b;
153 run;
NOTE: There were 33556 observations read from the data set WORK.MEPSLINK.
NOTE: There were 197677 observations read from the data set WORK.NHIS.
NOTE: The data set WORK.TOTAL01 has 29795 observations and 14 variables.
154 proc contents position; run;
NOTE: The PROCEDURE CONTENTS printed page 18.
155 proc print data=_last_(obs=60); run;
NOTE: There were 60 observations read from the data set WORK.TOTAL01.
NOTE: The PROCEDURE PRINT printed page 19.
156
157 title3 'Unweighted';
158 proc freq; tables
159 anylim01 mepshstat sex nhislim nhischron nhishstat/missing;
160 format anylim01 anylim. mepshstat nhishstat hstat. sex sex. nhislim nhislim.
161 nhischron nhischron.;
162 run;
NOTE: There were 29795 observations read from the data set WORK.TOTAL01.
NOTE: The PROCEDURE FREQ printed page 20.
163 proc means n nmiss min max maxdec=0; var age; run;
5 The SAS System
NOTE: There were 29795 observations read from the data set WORK.TOTAL01.
NOTE: The PROCEDURE MEANS printed page 21.
164
165 title3 'Weighted';
166 title4 'Compare Limitation Status and Health Status Over Time';
167 proc freq; tables
168 nhislim*anylim01
169 nhishstat*mepshstat/list missing;
170 format nhislim nhislim. anylim01 anylim. nhishstat mepshstat hstat.;
171 weight perwt01f;
172 run;
NOTE: There were 29795 observations read from the data set WORK.TOTAL01.
NOTE: The PROCEDURE FREQ printed page 22.
NOTE: SAS Institute Inc., SAS Campus Drive, Cary, NC USA 27513-2414
AHRQ MEPS DATA USERS WORKSHOP (LINKING) -- NOV/DEC 2004 1
NHIS-MEPS Link
2001 MEPS
Data Set Name: WORK.MEPS01 Observations: 33556
Member Type: DATA Variables: 9
Engine: V8 Indexes: 0
Created: 13:08 Sunday, November 21, 2004 Observation Length: 72
Last Modified: 13:08 Sunday, November 21, 2004 Deleted Observations: 0
Protection: Compressed: NO
Data Set Type: Sorted: NO
Label:
-----Engine/Host Dependent Information-----
Data Set Page Size: 8192
Number of Data Set Pages: 298
First Data Page: 1
Max Obs per Page: 113
Obs in First Data Page: 83
Number of Data Set Repairs: 0
File Name: C:\_TD1360\meps01.sas7bdat
Release Created: 8.0202M0
Host Created: WIN_PRO
-----Alphabetic List of Variables and Attributes-----
# Variable Type Len Pos Label
---------------------------------------------------------------------------
5 ANYLIM01 Num 8 24 ANY LIMITATION IN P5R3,4,5/P6R1,2,3
1 DUPERSID Char 8 64 PERSID (DUID + PID)
9 MEPSHSTAT Num 8 56 MEPS Health Status
6 PERWT01F Num 8 32 EXPENDITURE FILE PERSON WEIGHT 2001
2 RTHLTH31 Num 8 0 PERCEIVED HEALTH STATUS - RD 3/1
3 RTHLTH42 Num 8 8 PERCEIVED HEALTH STATUS - RD 4/2
4 RTHLTH53 Num 8 16 PERCEIVED HEALTH STATUS - RD 5/3
8 VARPSU01 Num 8 48 VARIANCE ESTIMATION PSU - 2001
7 VARSTR01 Num 8 40 VARIANCE ESTIMATION STRATUM - 2001
-----Variables Ordered by Position-----
# Variable Type Len Pos Label
---------------------------------------------------------------------------
1 DUPERSID Char 8 64 PERSID (DUID + PID)
2 RTHLTH31 Num 8 0 PERCEIVED HEALTH STATUS - RD 3/1
3 RTHLTH42 Num 8 8 PERCEIVED HEALTH STATUS - RD 4/2
4 RTHLTH53 Num 8 16 PERCEIVED HEALTH STATUS - RD 5/3
5 ANYLIM01 Num 8 24 ANY LIMITATION IN P5R3,4,5/P6R1,2,3
6 PERWT01F Num 8 32 EXPENDITURE FILE PERSON WEIGHT 2001
7 VARSTR01 Num 8 40 VARIANCE ESTIMATION STRATUM - 2001
8 VARPSU01 Num 8 48 VARIANCE ESTIMATION PSU - 2001
9 MEPSHSTAT Num 8 56 MEPS Health Status
AHRQ MEPS DATA USERS WORKSHOP (LINKING) -- NOV/DEC 2004 2
NHIS-MEPS Link
2001 MEPS
Obs DUPERSID RTHLTH31 RTHLTH42 RTHLTH53 ANYLIM01 PERWT01F VARSTR01 VARPSU01 MEPSHSTAT
1 40001013 3 3 2 1 7032.66 41 2 2
2 40001020 2 3 2 2 7406.75 41 2 2
3 40006015 3 3 3 2 9445.95 31 21 3
4 40006022 3 1 1 2 10874.55 31 21 1
5 40006039 2 1 2 2 9879.39 31 21 2
6 40006046 3 1 1 2 9391.85 31 21 1
7 40007015 1 2 3 2 14746.49 3 2 3
8 40007046 2 1 3 2 17710.36 3 2 3
9 40007054 4 4 4 2 11465.83 3 2 4
10 40007070 3 1 3 2 12494.85 3 2 3
11 40010015 2 1 1 2 14717.21 5 2 1
12 40010022 2 1 1 2 14613.13 5 2 1
13 40010039 1 1 1 2 12484.84 5 2 1
14 40010046 3 1 2 2 18432.19 5 2 2
15 40011013 4 3 3 2 15945.99 24 2 3
16 40011020 3 1 3 2 13520.37 24 2 3
17 40011037 3 3 3 2 11430.30 24 2 3
18 40012018 1 2 1 2 21754.21 31 29 1
19 40012025 4 1 1 2 13391.24 31 29 1
20 40013017 5 3 3 1 10172.85 39 1 3
21 40013024 2 1 1 1 12116.02 39 1 1
22 40015018 4 3 2 1 6058.14 98 19 2
23 40015025 1 2 1 2 6682.32 98 19 1
24 40015032 4 2 3 2 6682.32 98 19 3
25 40016014 3 2 1 2 11808.96 123 2 1
26 40016021 1 1 1 2 12970.75 123 2 1
27 40017019 2 2 2 2 9345.54 4 2 2
28 40017026 2 2 3 1 9120.71 4 2 3
29 40018018 2 2 3 2 11392.56 135 1 3
30 40018025 2 1 4 2 12694.24 135 1 4
31 40018035 4 2 2 2 11548.51 135 1 2
32 40019015 3 3 3 1 16065.86 123 2 3
33 40019022 3 3 3 1 12927.19 123 2 3
34 40019039 2 3 3 1 21595.44 123 2 3
35 40020010 1 2 1 2 12378.91 17 2 1
36 40020027 1 2 1 1 10256.21 17 2 1
37 40023018 2 2 2 2 9281.61 21 1 2
38 40023025 3 3 2 1 9189.79 21 1 2
39 40023032 1 1 1 2 10271.99 21 1 1
40 40023049 1 1 1 2 10271.99 21 1 1
41 40023055 1 2 1 2 9929.48 21 1 1
42 40025014 2 3 4 1 11582.80 47 2 4
43 40025021 2 2 3 2 6051.68 47 2 3
44 40025038 1 2 2 2 4703.07 47 2 2
45 40025045 2 2 2 2 5447.75 47 2 2
46 40025051 2 3 3 2 5447.75 47 2 3
47 40025069 -1 -1 -9 -9 0.00 47 2 .
48 40026014 1 2 3 1 7654.94 40 2 3
49 40027012 2 3 2 1 7095.74 21 1 2
50 40028017 2 2 2 2 13338.04 39 1 2
51 40028024 1 2 1 2 9193.86 39 1 1
52 40029012 1 1 1 2 9094.18 32 9 1
53 40029029 2 2 2 2 12886.08 32 9 2
54 40029036 2 2 2 2 10287.26 32 9 2
55 40029043 2 2 2 2 9030.71 32 9 2
56 40030018 2 1 2 2 12471.73 97 2 2
57 40030025 2 2 2 2 10955.36 97 2 2
58 40032016 1 1 1 1 29643.50 11 1 1
59 40033020 2 2 2 1 7589.17 80 1 2
60 40034019 3 3 4 1 18333.91 101 1 4
AHRQ MEPS DATA USERS WORKSHOP (LINKING) -- NOV/DEC 2004 3
NHIS-MEPS Link
2001 MEPS
Verify New Variable
MEPS Health Status
Cumulative Cumulative
MEPSHSTAT Frequency Percent Frequency Percent
-----------------------------------------------------------------
. 57 0.17 57 0.17
1 Excellent 9665 28.80 9722 28.97
2 Very Good 11051 32.93 20773 61.91
3 Good 8978 26.76 29751 88.66
4 Fair 2811 8.38 32562 97.04
5 Poor 994 2.96 33556 100.00
Cumulative Cumulative
MEPSHSTAT RTHLTH53 RTHLTH42 RTHLTH31 Frequency Percent Frequency Percent
-----------------------------------------------------------------------------------------------------------------
. -9 Not Ascer -1 Inapp -1 Inapp 6 0.02 6 0.02
. -8 DK -8 DK -7 Refused 1 0.00 7 0.02
. -7 Refused -7 Refused -7 Refused 2 0.01 9 0.03
. -7 Refused -1 Inapp -1 Inapp 4 0.01 13 0.04
. -1 Inapp -1 Inapp -1 Inapp 44 0.13 57 0.17
1 Excellent -9 Not Ascer 1 Excellent 2 Very Good 1 0.00 58 0.17
1 Excellent -7 Refused 1 Excellent 2 Very Good 1 0.00 59 0.18
1 Excellent -7 Refused 1 Excellent 3 Good 1 0.00 60 0.18
1 Excellent -1 Inapp -1 Inapp 1 Excellent 17 0.05 77 0.23
1 Excellent -1 Inapp 1 Excellent 1 Excellent 20 0.06