* Match.sas; * Program to match household data from year to year; * using variables x7 Random Cluster Code and x10 Family Serial Number; * Household matching using x7 and x10 only good for years 1968-1975; * keep head or spouse only (x53<=2) * with the Mare-Winship data; * May 24, 1996; options nocenter ps=79 compress=yes; libname save '.'; filename raw pipe 'zcat /home/data/mare_winship/cpsmw69.raw.Z'; data save.indiv1; length default=4; infile raw lrecl=386; input x10 27-32 x53 132-133 @; if x53 le 2; input x1 1-6 x2 7-9 x3 10-12 x4 13-14 x5 15 x6 16 x7 17-21 x8 22-24 x9 25-26 x10 27-32 x11 34 x12 35-36 x13 37 x14 39 x15 40-41 x16 42-51 x17 52 x18 53-54 x19 55 x20 56-61 x21 62 x22 63 x23 66-67 x24 68-69 x25 71 x26 72-73 x27 74-75 x28 77 x29 78-79 x30 80-81 x31 82-91 x32 92 x33 93-95 x34 96 x35 97 x36 98 x37 99 x38 100-102 x39 103-105 x40 106 x41 107 x42 108 x43 110 x44 112 x45 114 x46 115-121 x47 122 x48 123 x49 124-125 x50 126-127 x51 128-129 x52 131 x53 132-133 x54 134 x55 135 x56 136 x57 137 x58 138 x59 139 x60 140 x61 141-147 x62 148 x63 149 x64 150 x65 151 x66 152-153 x67 154-161 x68 162-169 x69 170 x70 171-177 x71 178 x72 179 x73 180 x74 181 x75 182 x76 183 x77 184 x78 185 x79 186 x80 187-193 x81 195-196 x82 197-198 x83 200 x84 201-202 x85 204 x86 205-206 x87 208 x88 209-210 x89 211 x90 212 x91 213-218 x92 219-224 x93 225 x94 226 x95 228 x96 229-231 x97 232 x98 233-235 x99 236 x100 237 x101 238-242 x102 243-247 x103 248-259 x104 260-270 x105 271-275 x106 276-280 x107 281-292 x108 293-303 x109 304-310 x110 311-317 x111 318-324 x112 325-331 x113 332-338 x114 339-345 x115 346-352 x116 353-359 x117 360-366 x118 367-370 @; if x4 gt 79 then input x119 371-374 x120 375-376 x121 377-378 x122 379 x123 380 x124 381 x125 382 x126 383 x127 384 x128 385 x129 386 ; age=x33; run; proc sort; by x7 x10 age x72 x76; run; Data save.Year1 (Rename=(x1=y11 x4=y14 x5=y15 x6=y16 x18=y118 x19=y119 x21=y121 x22=y122 x23=y123 x24=y124 x25=y125 x28=y128 x29=y129 x30=y130 x31=y131 x104=y1104)); Set save.indiv1; if x6 le 4 then output save.Year1; run; proc print data=save.Year1 (obs=50); variables x7 x10 x33 x72 x75 x76; run; filename raw pipe 'zcat /home/data/mare_winship/cpsmw70.raw.Z'; data save.indiv2; length default=4; infile raw lrecl=386; input x10 27-32 x53 132-133 @; if x53 le 2; input x1 1-6 x2 7-9 x3 10-12 x4 13-14 x5 15 x6 16 x7 17-21 x8 22-24 x9 25-26 x10 27-32 x11 34 x12 35-36 x13 37 x14 39 x15 40-41 x16 42-51 x17 52 x18 53-54 x19 55 x20 56-61 x21 62 x22 63 x23 66-67 x24 68-69 x25 71 x26 72-73 x27 74-75 x28 77 x29 78-79 x30 80-81 x31 82-91 x32 92 x33 93-95 x34 96 x35 97 x36 98 x37 99 x38 100-102 x39 103-105 x40 106 x41 107 x42 108 x43 110 x44 112 x45 114 x46 115-121 x47 122 x48 123 x49 124-125 x50 126-127 x51 128-129 x52 131 x53 132-133 x54 134 x55 135 x56 136 x57 137 x58 138 x59 139 x60 140 x61 141-147 x62 148 x63 149 x64 150 x65 151 x66 152-153 x67 154-161 x68 162-169 x69 170 x70 171-177 x71 178 x72 179 x73 180 x74 181 x75 182 x76 183 x77 184 x78 185 x79 186 x80 187-193 x81 195-196 x82 197-198 x83 200 x84 201-202 x85 204 x86 205-206 x87 208 x88 209-210 x89 211 x90 212 x91 213-218 x92 219-224 x93 225 x94 226 x95 228 x96 229-231 x97 232 x98 233-235 x99 236 x100 237 x101 238-242 x102 243-247 x103 248-259 x104 260-270 x105 271-275 x106 276-280 x107 281-292 x108 293-303 x109 304-310 x110 311-317 x111 318-324 x112 325-331 x113 332-338 x114 339-345 x115 346-352 x116 353-359 x117 360-366 x118 367-370 @; if x4 gt 79 then input x119 371-374 x120 375-376 x121 377-378 x122 379 x123 380 x124 381 x125 382 x126 383 x127 384 x128 385 x129 386 ; age=x33; run; proc sort; by x7 x10 age x72 x76; run; Data save.Year2 (Rename=(x1=y21 x4=y24 x5=y25 x6=y26 x18=y218 x19=y219 x21=y221 x22=y222 x23=y223 x24=y224 x25=y225 x28=y228 x29=y229 x30=y230 x31=y231 x104=y2104)); Set save.indiv2; if x6 ge 5 then output save.Year2; run; proc print data=save.Year2 (obs=50); variables x7 x10 x33 x72 x75 x76; run;