/******************** Variables Used ********************/ /**Variable Names in Program Variable Names in Gator**/ pubid PUBID_2017 yas30_105 YAST30-105_2017 yhou_1 YHOU-1_2017 yhou_dlimortgage YHOU-DLIMORTGAGE_2017 yhou_dliown2 YHOU-DLIOWN2_2017 yhou_2 YHOU-2_2017 yhou_dliowned YHOU-DLIOWNED_2017 yhou_8 YHOU-8_2017 yhou_9 YHOU-9_2017 yhou_10m YHOU-10~M_2017 yhou_10y YHOU-10~Y_2017 yhou_11 YHOU-11_2017 yhou_12a YHOU-12A_2017 yhou_12bl YHOU-12B_000001_2017 yhou_12bu YHOU-12B_000002_2017 yhou_12c YHOU-12C_2017 yhou_13 YHOU-13_2017 yhou_ch1 YHOU-CH1_2017 yhou_ch2 YHOU-CH2_2017 yhou_ch_check YHOU-CH_CHECK_2017 yhou_ch3 YHOU-CH3_2017 yhou_ch3am YHOU-CH3A~M_2017 yhou_ch3ay YHOU-CH3A~Y_2017 yhou_ch4 YHOU-CH4_2017 yhou_ch5a YHOU-CH5A_2017 yhou_ch5bl YHOU-CH5B_000001_2017 yhou_ch5bu YHOU-CH5B_000002_2017 yhou_ch5c YHOU-CH5C_2017 yhou_ch6 YHOU-CH6_2017 yhou_ch7 YHOU-CH7_2017 yhou_ch7a YHOU-CH7A_2017 yhou_ch7bl YHOU-CH7B_000001_2017 yhou_ch7bu YHOU-CH7B_000002_2017 yhou_ch7c YHOU-CH7C_2017 yhou_ch8 YHOU-CH8_2017 yhou_ch8_1 YHOU-CH8_1_2017 yhou_ch8a YHOU-CH8A_2017 yhou_ch8c YHOU-CH8C_2017 yhou_housevalue YHOU-HOUSEVALUE_2017 yhou_chhva YHOU-CHHVA_2017 yhou_chhvbl YHOU-CHHVB_000001_2017 yhou_chhvbu YHOU-CHHVB_000002_2017 yhou_chhvc YHOU-CHHVC_2017 yas30_200a YAST30-200A_2017 yas30_210a YAST30-210A_2017 yas30_300a YAST30-300A_2017 yas30_500a YAST30-500A_2017 yas30_510a YAST30-510A_2017 yas30_520a YAST30-520A_2017 yas30_age30elig1 YAST30-AGE30ELIG1_2017 yas30_ch9 YAST30-CH9_2017 yas30_ch10 YAST30-CH10_2017 yas30_ch10a YAST30-CH10A_2017 yas30_age30elig2 YAST30-AGE30ELIG2_2017 yas30_4000s1 YAST30-4000S1_2017 yas30_4000s2 YAST30-4000S2_2017 yas30_4000s3 YAST30-4000S3_2017 yas30_4000s3a YAST30-4000S3A_2017 yas30_4000s4 YAST30-4000S4_2017 yas30_4000s5 YAST30-4000S5_2017 yas30_4000s6 YAST30-4000S6_2017 yas30_4000s8 YAST30-4000S8_2017 yas30_4000s9 YAST30-4000S9_2017 yas30_4000s9a YAST30-4000S9A_2017 yas30_4000s10 YAST30-4000S10_2017 yas30_4000s10a YAST30-4000S10A_2017 yas30_4400 YAST30-4400_2017 yas30_4420 YAST30-4420_2017 yas30_4422 YAST30-4422_2017 yas30_4424l YAST30-4424_000001_2017 yas30_4424u YAST30-4424_000002_2017 yas30_4426 YAST30-4426_2017 yas30_4530 YAST30-4530_2017 yas30_4550 YAST30-4550_2017 yas30_4552 YAST30-4552_2017 yas30_4660 YAST30-4660_2017 yas30_4680 YAST30-4680_2017 yas30_4682 YAST30-4682_2017 yas30_4686 YAST30-4686_2017 yas30_4270 YAST30-4270_2017 yas30_4290 YAST30-4290_2017 yas30_4292 YAST30-4292_2017 yas30_4294l YAST30-4294_000001_2017 yas30_4294u YAST30-4294_000002_2017 yas30_4296 YAST30-4296_2017 yas30_fa_8 YAST30-FA_8_2017 yas30_fa_8a000001 YAST30-FA_8A~000001_2017 yas30_fa_8a000002 YAST30-FA_8A~000002_2017 yas30_fa_8a000003 YAST30-FA_8A~000003_2017 yas30_fa_8a000004 YAST30-FA_8A~000004_2017 yas30_fa_8a000005 YAST30-FA_8A~000005_2017 yas30_fa_8a000006 YAST30-FA_8A~000006_2017 yas30_fa_8a000007 YAST30-FA_8A~000007_2017 yas30_fa_8_inselection_01 YAST30-FA_8-INSELECTION.01_2017 yas30_fa_8_inselection_02 YAST30-FA_8-INSELECTION.02_2017 yas30_fa_8_inselection_03 YAST30-FA_8-INSELECTION.03_2017 yas30_fa_8_inselection_04 YAST30-FA_8-INSELECTION.04_2017 yas30_fa_8_inselection_05 YAST30-FA_8-INSELECTION.05_2017 yas30_fa_8_inselection_06 YAST30-FA_8-INSELECTION.06_2017 yas30_fa_8_inselection_07 YAST30-FA_8-INSELECTION.07_2017 yas30_fa_8_inselection_08 YAST30-FA_8-INSELECTION.08_2017 yas30_fa_8_inselection_09 YAST30-FA_8-INSELECTION.09_2017 yas30_fa_8b_01 YAST30-FA_8B.01_2017 yas30_fa_8b_02 YAST30-FA_8B.02_2017 yas30_fa_8b_06 YAST30-FA_8B.06_2017 yas30_fa_8c1_01 YAST30-FA_8C1.01_2017 yas30_fa_8c1_02 YAST30-FA_8C1.02_2017 yas30_fa_8c2_01 YAST30-FA_8C2.01_2017 yas30_fa_8c2_02 YAST30-FA_8C2.02_2017 yas30_fa_8d_01 YAST30-FA_8D.01_2017 yas30_fa_8d_02 YAST30-FA_8D.02_2017 yas30_fa_8d_06 YAST30-FA_8D.06_2017 yas30_4300 YAST30-4300_2017 yas30_4300a YAST30-4300A_2017 yas30_4300a1 YAST30-4300A1_2017 yas30_4790 YAST30-4790_2017 yas30_4810 YAST30-4810_2017 yas30_4812 YAST30-4812_2017 yas30_4816 YAST30-4816_2017 yas30_4840 YAST30-4840_2017 yas30_4842 YAST30-4842_2017 yas30_4010 YAST30-4010_2017 yas30_4010a2a YAST30-4010A2A_2017 yas30_4030a_01 YAST30-4030A.01_2017 yas30_4030a_02 YAST30-4030A.02_2017 yas30_4030a_03 YAST30-4030A.03_2017 yas30_4030a_04 YAST30-4030A.04_2017 yas30_4032_01 YAST30-4032.01_2017 yas30_4032_02 YAST30-4032.02_2017 yas30_4032_03 YAST30-4032.03_2017 yas30_4032_04 YAST30-4032.04_2017 yas30_4033al_01 YAST30-4033A_000001.01_2017 yas30_4033au_01 YAST30-4033A_000002.01_2017 yas30_4140 YAST30-4140_2017 yas30_4160 YAST30-4160_2017 yas30_4162 YAST30-4162_2017 yas30_4870 YAST30-4870_2017 yas30_4880 YAST30-4880_2017 yas30_4900 YAST30-4900_2017 yas30_4902 YAST30-4902_2017 yas30_5011 YAST30-5011_2017 yas30_5011a YAST30-5011A_2017 yas30_5012 YAST30-5012_2017 yas30_5014 YAST30-5014_2017 yas30_5015 YAST30-5015_2017 yas30_5015a YAST30-5015A_2017 yas30_5016 YAST30-5016_2017 yas30_5018 YAST30-5018_2017 yas30_5019 YAST30-5019_2017 yas30_5040_new YAST30-5040_NEW_2017 yas30_5074_new YAST30-5074_NEW_2017 yas30_5082_new YAST30-5082_NEW_2017 yas30_5084l_new YAST30-5084_000001_NEW_2017 yas30_5084u_new YAST30-5084_000002_NEW_2017 yas30_5086_new YAST30-5086_NEW_2017 yas30_5130 YAST30-5130_2017 yas30_5170 YAST30-5170_2017 yas30_5172 YAST30-5172_2017 yas30_5210a YAST30-5210A_2017 yas30_5210aa YAST30-5210AA_2017 yas30_5210a1 YAST30-5210A1_2017 yas30_5210a2 YAST30-5210A2_2017 yas30_5210a4 YAST30-5210A4_2017 yas30_5210b1 YAST30-5210B1_2017 yas30_5210c1 YAST30-5210C1_2017 yas30_5210c2 YAST30-5210C2_2017 yas30_5210d1 YAST30-5210D1_2017 yas30_5210d1a YAST30-5210D1A_2017 yas30_5210d2 YAST30-5210D2_2017 yas30_5250 YAST30-5250_2017 yas30_5260 YAST30-5260_2017 yas30_5280 YAST30-5280_2017 yas30_5282 YAST30-5282_2017 yas30_5282n YAST30-5282N_2017 yas30_5284nl YAST30-5284N_000001_2017 yas30_5284nu YAST30-5284N_000002_2017 yas30_5286 YAST30-5286_2017 yas30_5310 YAST30-5310_2017 yas30_5320 YAST30-5320_2017 yas30_5322 YAST30-5322_2017 yas30_5326 YAST30-5326_2017 yas30_5410 YAST30-5410_2017 yas30_5411 YAST30-5411_2017 yas30_5420 YAST30-5420_2017 yas30_5421 YAST30-5421_2017 yas30_5422m YAST30-5422~M_2017 yas30_5422y YAST30-5422~Y_2017 yas30_5423 YAST30-5423_2017 hhi4400a YHHI-4400A_2017 hhi4400x YHHI-4400X_2017 e24600_11 YSCH-24600.01.01_2017 e24600_21 YSCH-24600.02.01_2017 e24600_22 YSCH-24600.02.02_2017 e24600_24 YSCH-24600.02.04_2017 e24600_31 YSCH-24600.03.01_2017 e24600_51 YSCH-24600.05.01_2017 e24600_55 YSCH-24600.05.05_2017 e24700_11 YSCH-24700.01.01_2017 e24700_21 YSCH-24700.02.01_2017 e24700_22 YSCH-24700.02.02_2017 e24700_24 YSCH-24700.02.04_2017 e24700_31 YSCH-24700.03.01_2017 e24700_51 YSCH-24700.05.01_2017 e24700_55 YSCH-24700.05.05_2017 e24800_11 YSCH-24800.01.01_2017 e24800_21 YSCH-24800.02.01_2017 e24800_22 YSCH-24800.02.02_2017 e24800_24 YSCH-24800.02.04_2017 e24800_31 YSCH-24800.03.01_2017 e24800_51 YSCH-24800.05.01_2017 e24900_11 YSCH-24900.01.01_2017 e25600_11 YSCH-25600.01.01_2017 e25600_12 YSCH-25600.01.02_2017 e25600_13 YSCH-25600.01.03_2017 e25600_14 YSCH-25600.01.04_2017 e25600_15 YSCH-25600.01.05_2017 e25600_16 YSCH-25600.01.06_2017 e25600_17 YSCH-25600.01.07_2017 e25600_18 YSCH-25600.01.08_2017 e25600_21 YSCH-25600.02.01_2017 e25600_22 YSCH-25600.02.02_2017 e25600_51 YSCH-25600.05.01_2017 e25700_11 YSCH-25700.01.01_2017 e25700_12 YSCH-25700.01.02_2017 e25700_13 YSCH-25700.01.03_2017 e25700_14 YSCH-25700.01.04_2017 e25700_15 YSCH-25700.01.05_2017 e25700_16 YSCH-25700.01.06_2017 e25700_17 YSCH-25700.01.07_2017 e25700_18 YSCH-25700.01.08_2017 e25700_21 YSCH-25700.02.01_2017 e25700_22 YSCH-25700.02.02_2017 e25700_51 YSCH-25700.05.01_2017 e25800_11 YSCH-25800.01.01_2017 e25800_12 YSCH-25800.01.02_2017 e25800_21 YSCH-25800.02.01_2017 /******************** SAS code for variable creation ********************/ /******************compute family and government educational debt collected in schooling section****************/ array e24800 e24800_11 e24800_21 e24800_22 e24800_24 e24800_31 e24800_51; array e24900 e24900_11 dum dum dum dum dum; array e25700 e25700_11-e25700_18 e25700_21-e25700_22 e25700_51; array e25800 e25800_11 e25800_12 dum dum dum dum dum dum e25800_21 e25800_22 dum; do over e24800; if e24800 in (-1 -2) & e24900>0 then do; if e24900=1 then e24800=500; else if e24900=2 then e24800=1750; else if e24900=3 then e24800=3750; else if e24900=4 then e24800=7500; else if e24900=5 then e24800=17500; else if e24900=6 then e24800=37500; else if e24900=7 then e24800=50001; end; end; do over e25700; if e25700 in (-1 -2) & e25800>0 then do; if e25800=1 then e25700=500; else if e25800=2 then e25700=1750; else if e25800=3 then e25700=3750; else if e25800=4 then e25700=7500; else if e25800=5 then e25700=17500; else if e25800=6 then e25700=37500; else if e25800=7 then e25700=50001; end; end; famedudebt_c=0; do over e24800; if e24800>0 then famedudebt_c=famedudebt_c+e24800; end; do over e24800; if e24800 in (-1 -2 -3) then famedudebt_c=-3; end; govdebt_c=0; do over e25700; if e25700>0 then govdebt_c=govdebt_c+e25700; end; do over e25700; if e25700 in (-1 -2 -3) then govdebt_c=-3; end; /*******************************start of the assets section (hhworthy)****************************************************/ /* */ /* first create the components of hhworth30: real estate, loans, cars, etc. each sub-section computes one item */ /* of the total asset of the respondent and his/her spouse or partner. flag variables are created to indicate whether */ /* r/family received that asset item (flag_item in (1,2,-3) and if so, was the amount computed directly from the amount */ /* reported by respondent (flag_item=1) or was it computed from estimates given by respondent (flag_item=2), or was */ /* it unable to be computed (flag_item=-3). */ /*************************************************************************************************************************/ /* initialize the variable to housing_type= don't own, house_value = 0 */ housing_type=6 ; house_value=0 ; /****************** assets section 1: residence *************************************************/ hhi4400 = -4; if (hhi4400a > -4) then hhi4400 = hhi4400a; else if (hhi4400x > -4) then hhi4400 = hhi4400x; if yhou_dlimortgage=1 or yhou_dliown2=1 or yhou_ch1 in (1 2 3 4 5) then do; flag_house=1; flagck_house=1; if hhi4400=1 then housing_type=1; else if hhi4400=12 then housing_type=2; else if hhi4400=8 then housing_type=3; else do; housing_type=9; *own but house type unknown; flag_h_type=1; end; if yhou_housevalue=1 & yhou_chhva>=0 then house_value=yhou_chhva; else if yhou_housevalue=2 & yhou_chhvbl>=0 & yhou_chhvbu>=0 then do; if yhou_chhvbu>=yhou_chhvbl then house_value = (yhou_chhvbu + yhou_chhvbl)/2; else house_value=-3; end; if yhou_housevalue not in (1,2) or yhou_chhva in (-1, -2) then do; if 1<=yhou_chhvc<=7 then flag_house=2; if yhou_chhvc=1 then house_value=12500; else if yhou_chhvc=2 then house_value=37500; else if yhou_chhvc=3 then house_value=75000; else if yhou_chhvc=4 then house_value=175000; else if yhou_chhvc=5 then house_value=375000; else if yhou_chhvc=6 then house_value=750000; else if yhou_chhvc=7 then house_value=1000001; end; end; if yhou_ch1 in (-1 -2 -3) or yhou_chhvbu in (-1 -2 -3) or yhou_chhvbl in (-1 -2 -3) or yhou_chhvc in (-1 -2 -3) then house_value=-3; if yhou_ch1 in (-1 -2 -3) then housing_type=-3; *not knowing own or not own; if yas30_age30elig2 ne 1 then do; housing_type=-4; house_value=-4; end; /*****************************assets section 2: owning business-pvbuss*********************************************/ /* asset30 adjusted for questions skipped or not in r18 */ * yas30_4032_04 = -4; yas30_4032_05 = -4; yas30_4032a_02 = -4; yas30_4032a_03 = -4; yas30_4032a_04 = -4; yas30_4032a_05 = -4; yas30_4033al_02 = -4; yas30_4033al_03 = -4; yas30_4033al_04 = -4; yas30_4033al_05 = -4; yas30_4033au_02 = -4; yas30_4033au_03 = -4; yas30_4033au_04 = -4; yas30_4033au_05 = -4; yas30_4034al_01 = -4; yas30_4034al_02 = -4; yas30_4034al_03 = -4; yas30_4034al_04 = -4; yas30_4034al_05 = -4; yas30_4034au_01 = -4; yas30_4034au_02 = -4; yas30_4034au_03 = -4; yas30_4034au_04 = -4; yas30_4034au_05 = -4; yas30_4036_02 = -4; yas30_4036_03 = -4; yas30_4036_04 = -4; yas30_4036_05 = -4; yas30_4036a_02 = -4; yas30_4036a_03 = -4; yas30_4036a_04 = -4; yas30_4036a_05 = -4; /**** create array for business variables because some own multiple businesses ****/ array pvbuss (*) pvbuss_01 - pvbuss_04; /* pv of business */ array yas30_4030a (*) yas30_4030a_01 - yas30_4030a_05; /* make, lose or even */ array yas30_4032 (*) yas30_4032_01 - yas30_4032_05; /* amount make */ array yas30_4032a (*) yas30_4032a_01 - yas30_4032a_05; /* amount lose */ array yas30_4033al(*) yas30_4033al_01 - yas30_4033al_05; /* amount make lower bound */ array yas30_4033au(*) yas30_4033au_01 - yas30_4033au_05; /* amount make upper bound */ array yas30_4034al(*) yas30_4034al_01 - yas30_4034al_05; /* amount lose lower bound */ array yas30_4034au(*) yas30_4034au_01 - yas30_4034au_05; /* amount lose upper bound */ array yas30_4036 (*) yas30_4036_01 - yas30_4036_05; /* amount make, estimate */ array yas30_4036a (*) yas30_4036a_01 - yas30_4036a_05; /* amount lose, estimate */ do i=1 to dim(pvbuss); pvbuss(i)= -4; if yas30_4010=1 then do; flag_pvbuss =1; if yas30_4030a(i)=1 then do; if yas30_4032a(i)>=0 then pvbuss(i)=yas30_4032a(i); else if yas30_4032a(i) in (-1, -2) then do; if yas30_4034au(i)>=yas30_4034al(i) and yas30_4034au(i)>=0 and yas30_4034al(i)>=0 then pvbuss(i)=(yas30_4034al(i) + yas30_4034au(i))/2; else pvbuss(i)=-3; end; if yas30_4034au(i) in (-1, -2) then do; if 1 <= yas30_4036a(i)<=7 then flag_pvbuss=2; if yas30_4036a(i)=1 then pvbuss(i)=12500; else if yas30_4036a(i)=2 then pvbuss(i)=37500; else if yas30_4036a(i)=3 then pvbuss(i)=75000; else if yas30_4036a(i)=4 then pvbuss(i)=175000; else if yas30_4036a(i)=5 then pvbuss(i)=375000; else if yas30_4036a(i)=6 then pvbuss(i)=750000; else if yas30_4036a(i)=7 then pvbuss(i)=1000001; end; if pvbuss(i)>0 then pvbuss(i)=-1*pvbuss(i); end; else if yas30_4030a(i)=2 then do; if yas30_4032(i)>=0 then pvbuss(i)=yas30_4032(i); else if yas30_4032(i) in (-1, -2) then do; if yas30_4033au(i)>=yas30_4033al(i) and yas30_4033au(i)>=0 and yas30_4033al(i)>=0 then pvbuss(i)=(yas30_4033al(i) + yas30_4033au(i))/2; else pvbuss(i)=-3; end; if yas30_4033au(i) in (-1, -2) then do; if 1<=yas30_4036(i)<=7 then flag_pvbuss=2; if yas30_4036(i)=1 then pvbuss(i)=12500; else if yas30_4036(i)=2 then pvbuss(i)=37500; else if yas30_4036(i)=3 then pvbuss(i)=75000; else if yas30_4036(i)=4 then pvbuss(i)=175000; else if yas30_4036(i)=5 then pvbuss(i)=375000; else if yas30_4036(i)=6 then pvbuss(i)=750000; else if yas30_4036(i)=7 then pvbuss(i)=1000001; end; end; else if yas30_4030a(i)=3 then pvbuss(i)=0; end; if yas30_4010=-1 or yas30_4030a(i)=-1 or yas30_4036a(i)=-1 or yas30_4036(i)= -1 then pvbuss(i)=-1; if yas30_4010=-2 or yas30_4030a(i)=-2 or yas30_4036a(i)=-2 or yas30_4036(i)= -2 then pvbuss(i)=-2; if yas30_4010=-3 or yas30_4030a(i)=-3 or yas30_4036a(i)=-3 or yas30_4036(i)= -3 then pvbuss(i)=-3; end; /**************************assets section 3: ownership of other real-estate : othreal**********************************/ /* asset30 adjusted for questions skipped in r18 */ yas30_4164nl = -4; yas30_4164nu = -4; yas30_4164u = -4; yas30_4164l = -4; yas30_4162n = -4; yas30_4166 = -4; othreal=-4; if yas30_4140=1 then do; flag_othreal=1; if yas30_4160=1 & yas30_4162>=0 then othreal=yas30_4162; else if yas30_4160=2 & yas30_4164u>=0 & yas30_4164l>=0 then do; if yas30_4164u>=yas30_4164l then othreal=(yas30_4164l+yas30_4164u)/2; else othreal=-3; end; else if yas30_4160=3 & yas30_4162n>=0 then othreal=-(yas30_4162n); else if yas30_4160=4 & yas30_4164nu>=0 & yas30_4164nl>=0 then do; if yas30_4164nu>=yas30_4164nl then othreal=-(yas30_4164nl+yas30_4164nu)/2; else othreal=-3; end; if yas30_4160 not in (1,2,3,4) or yas30_4162 in (-1, -2) then do; if 1<=yas30_4166<=7 then flag_othreal=2; if yas30_4166=1 then othreal=12500; else if yas30_4166=2 then othreal=37500; else if yas30_4166=3 then othreal=75000; else if yas30_4166=4 then othreal=175000; else if yas30_4166=5 then othreal=375000; else if yas30_4166=6 then othreal=750000; else if yas30_4166=7 then othreal=1000001; end; end; if yas30_4140 in (-1 -2 -3) or yas30_4164l in (-1 -2 -3) or yas30_4164u in (-1 -2 -3) or yas30_4164nl in (-1 -2 -3) or yas30_4164nu in (-1 -2 -3) or yas30_4166 in (-1 -2 -3) then othreal =-3; /*****************assets section 4: retirement plans or pensions--retdsav***********************************************/ retdsav=-4; if yas30_4270=1 or yas30_4000s6=1 then do; flag_retdsav=1; if yas30_4290=1 & yas30_4292>=0 then retdsav=yas30_4292; else if yas30_4290=2 and yas30_4294u>=0 and yas30_4294l>=0 then do; if yas30_4294u>=yas30_4294l then retdsav = (yas30_4294l + yas30_4294u)/2; else retdsav =-3; end; if yas30_4290 not in (1,2) or yas30_4292 in (-1, -2) then do; if 1<=yas30_4296<=8 then flag_retdsav=2; if yas30_4296=1 then retdsav=2500; else if yas30_4296=2 then retdsav= 7500; else if yas30_4296=3 then retdsav=17500; else if yas30_4296=4 then retdsav=37500; else if yas30_4296=5 then retdsav=75000; else if yas30_4296=6 then retdsav=175000; else if yas30_4296=7 then retdsav=375000; else if yas30_4296=8 then retdsav=500001; end; end; if yas30_4270 in (-1 -2 -3) or yas30_4294l in (-1 -2 -3) or yas30_4294u in (-1 -2 -3) or yas30_4296 in (-1 -2 -3) then retdsav=-3; /*****************assets section 5: tax advanged accounts, ira etc.--ira*************************************/ /* asset30 adjusted for questions skipped or not in r18 */ yas30_fa_8b_03 = -4; yas30_fa_8b_04 = -4; yas30_fa_8b_05 = -4; yas30_fa_8b_07 = -4; * yas30_fa_8c1_01 = -4; * yas30_fa_8c1_02 = -4; yas30_fa_8c1_03 = -4; yas30_fa_8c1_04 = -4; yas30_fa_8c1_05 = -4; yas30_fa_8c1_06 = -4; yas30_fa_8c1_07 = -4; * yas30_fa_8c2_01 = -4; * yas30_fa_8c2_02 = -4; yas30_fa_8c2_03 = -4; yas30_fa_8c2_04 = -4; yas30_fa_8c2_05 = -4; yas30_fa_8c2_06 = -4; yas30_fa_8c2_07 = -4; yas30_fa_8d_03 = -4; yas30_fa_8d_04 = -4; yas30_fa_8d_05 = -4; yas30_fa_8d_07 = -4; array ira (*) ira_01 - ira_07; /* pv of tax ad. accts */ array ira_w (*) ira_w_01 - ira_w_07; /* withdrawl intended to pay back */ array ira_t (*) ira_t_01 - ira_t_07; /* total after intended payback withdrawl */ array yas30_fa_8a (*) yas30_fa_8a000001 - yas30_fa_8a000007; /* type of the accts */ array yas30_fa_8b (*) yas30_fa_8b_01 - yas30_fa_8b_07; /* withdraw or not */ array yas30_fa_8c1 (*) yas30_fa_8c1_01 - yas30_fa_8c1_07; /*amt int to payback*/ array yas30_fa_8c2 (*) yas30_fa_8c2_01 - yas30_fa_8c2_07; /* enter amt int to payback*/ array yas30_fa_8c4 (*) yas30_fa_8c4_01 - yas30_fa_8c4_07; /* estimate amt int to payback*/ /* kn note: added */ array yas30_fa_8d (*) yas30_fa_8d_01 - yas30_fa_8d_07; /* ttl after pay back */ do i=1 to dim(ira); ira_w(i)=-4; ira_t(i)=-4; ira(i)= -4; if yas30_fa_8=1 then do; flag_ira =1; if yas30_fa_8a(i)=1 then do; *ira_w; if yas30_fa_8b(i)=1 then do; if yas30_fa_8c1(i)=1 & yas30_fa_8c2(i)>=0 then ira_w(i)=yas30_fa_8c2(i); else if yas30_fa_8c2(i) in(-1, -2) & yas30_fa_8c4(i) > 0 then do; *kn note: added to catch estimates of payback amt apr 17 2019; if 1<=yas30_fa_8c4(i)<=7 then flag_ira=2; if yas30_fa_8c4(i)=1 then ira_w(i)=2500; else if yas30_fa_8c4(i)=2 then ira_w(i)=7500; else if yas30_fa_8c4(i)=3 then ira_w(i)=17500; else if yas30_fa_8c4(i)=4 then ira_w(i)=37500; else if yas30_fa_8c4(i)=5 then ira_w(i)=75000; else if yas30_fa_8c4(i)=6 then ira_w(i)=175000; else if yas30_fa_8c4(i)=7 then ira_w(i)=250001; end; end; else if yas30_fa_8b(i)=0 then ira_w(i)=0; else ira_w(i)=-3; *ira_t; if yas30_fa_8d(i)>=0 then ira_t(i)=yas30_fa_8d(i); else ira_t(i)=-3; *ira; if ira_w(i)>=0 & ira_t(i)>=0 then ira(i)=ira_t(i)-ira_w(i); else if ira_w(i)=-3 or ira_t(i)=-3 then ira(i)=-3; end; else if yas30_fa_8a(i) in (-1 -2 -3) then ira(i)=-3; end; if yas30_fa_8 in (-1 -2 -3) then ira(i)=-3; end; /**********************assets section 6: bank savings--banksav*************************************************************/ banksav=-4; if yas30_4400=1 or yas30_4000s4=1 then do; flag_banksav=1; if yas30_4420=1 & yas30_4422>=0 then banksav=yas30_4422; else if yas30_4420=2 & yas30_4424u>=0 & yas30_4424l>=0 then do; if yas30_4424u>=yas30_4424l then banksav = (yas30_4424u + yas30_4424l)/2; else banksav=-3; end; if yas30_4420 not in (1,2) or yas30_4422 in (-1, -2) then do; if 1<=yas30_4426<=9 then flag_banksav=2; if yas30_4426=1 then banksav=500; else if yas30_4426=2 then banksav=1750; else if yas30_4426=3 then banksav=3750; else if yas30_4426=4 then banksav=7500; else if yas30_4426=5 then banksav=17500; else if yas30_4426=6 then banksav=37500; else if yas30_4426=7 then banksav=75000; else if yas30_4426=8 then banksav=175000; else if yas30_4426=9 then banksav=250001; end; end; if yas30_4400 in (-1 -2 -3) or yas30_4424l in (-1 -2 -3) or yas30_4424u in (-1 -2 -3) or yas30_4426 in (-1 -2 -3) or yas30_4422=-3 then banksav=-3; /************************************assets section 7: other bank savings-bonds****************************************/ /**if r or r's partner/spouse jointly have other bank savings in cds or bonds**/ bonds=-4; /* asset30 adjusted for questions skipped or not in r18 */ yas30_4554u = -4; yas30_4554l = -4; yas30_4556 = -4; if yas30_4530=1 then do; flag_bonds=1; if yas30_4550=1 & yas30_4552>=0 then bonds=yas30_4552; else if yas30_4550=2 & yas30_4554u>=0 & yas30_4554l>=0 then do; if yas30_4554u>=yas30_4554l then bonds = (yas30_4554u + yas30_4554l)/2; else bonds=-3; end; if yas30_4550 not in (1,2) or yas30_4552 in (-1, -2) then do; if 1<=yas30_4556<=9 then flag_bonds=2; if yas30_4556=1 then bonds=500; else if yas30_4556=2 then bonds=1750; else if yas30_4556=3 then bonds=3750; else if yas30_4556=4 then bonds=7500; else if yas30_4556=5 then bonds=17500; else if yas30_4556=6 then bonds=37500; else if yas30_4556=7 then bonds=75000; else if yas30_4556=8 then bonds=175000; else if yas30_4556=9 then bonds=250001; end; end; if yas30_4530 in (-1 -2 -3) or yas30_4554l in (-1 -2 -3) or yas30_4554u in (-1 -2 -3) or yas30_4556 in (-1 -2 -3) or yas30_4552=-3 then bonds=-3; /********assets section 8: owning stocks--stocks****************************************************/ stocks=-4; /* asset30 adjusted for questions skipped or not in r18 */ yas30_4684l = -4; yas30_4684u = -4; if yas30_4660=1 then do; flag_stocks=1; if yas30_4680=1 & yas30_4682>=0 then stocks=yas30_4682; else if yas30_4680=2 & yas30_4684l>=0 & yas30_4684u>=0 then do; if yas30_4684u>=yas30_4684l then stocks=(yas30_4684l+yas30_4684u)/2; else stocks=-3; end; if yas30_4680 not in (1,2) or yas30_4682 in (-1,-2) then do; if 1<=yas30_4686<=9 then flag_stocks=2; if yas30_4686=1 then stocks=500; else if yas30_4686=2 then stocks=1750; else if yas30_4686=3 then stocks=3750; else if yas30_4686=4 then stocks=7500; else if yas30_4686=5 then stocks=17500; else if yas30_4686=6 then stocks=37500; else if yas30_4686=7 then stocks=75000; else if yas30_4686=8 then stocks=175000; else if yas30_4686=9 then stocks=250001; end; end; if yas30_4660 in (-1 -2 -3) or yas30_4684l in (-1 -2 -3) or yas30_4684u in (-1 -2 -3) or yas30_4686 in (-1 -2 -3) or yas30_4682=-3 then stocks=-3; /************assets section 9: vehicle ownership-pvcars********************************/ pvcars1=-4; /* asset30 adjusted for questions skipped or not in r18 */ yas30_4814l = -4; yas30_4814u = -4; if yas30_4790=1 then do; flag_pvcars1=1; if yas30_4810=1 & yas30_4812>=0 then pvcars1=yas30_4812; else if yas30_4810=2 & yas30_4814l>=0 & yas30_4814u>=0 then do; if yas30_4814u>=yas30_4814l then pvcars1=(yas30_4814l+yas30_4814u)/2; else pvcars1=-3; end; if yas30_4810 not in (1,2) or yas30_4812 in (-1,-2) then do; if 1<=yas30_4816<=7 then flag_pvcars1=2; if yas30_4816=1 then pvcars1=2500; else if yas30_4816=2 then pvcars1=7500; else if yas30_4816=3 then pvcars1=17500; else if yas30_4816=4 then pvcars1=37500; else if yas30_4816=5 then pvcars1=75000; else if yas30_4816=6 then pvcars1=175000; else if yas30_4816=7 then pvcars1=250001; end; end; if yas30_4790 in (-1 -2 -3) or yas30_4814l in (-1 -2 -3) or yas30_4814u in (-1 -2 -3) or yas30_4816 in (-1 -2 -3) or yas30_4812=-3 then pvcars1=-3; /************assets section 9.2: secondary source of info on vehicle ownership, pvcars2 ********************************/ /* asset30 adjusted for questions skipped or not in r18 */ yas30_4000s9bl = -4; yas30_4000s9bu = -4; yas30_4000s9c = -4; pvcars2=-4; if yas30_4000s8 =1 then do; flag_pvcars2=1; if yas30_4000s9 =1 and yas30_4000s9a>=0 then pvcars2= yas30_4000s9a; else if yas30_4000s9 = 2 and yas30_4000s9bl>=0 and yas30_4000s9bu>=0 then do; if yas30_4000s9bu>= yas30_4000s9bl then pvcars2=(yas30_4000s9bu+yas30_4000s9bl)/2; else pvcars2=-3; end; if yas30_4000s9 not in (1,2) or yas30_4000s9a in (-1,-2) then do; if 1<= yas30_4000s9c <=8 then flag_pvcars2=2; if yas30_4000s9c=1 then pvcars2 = 500; else if yas30_4000s9c=2 then pvcars2= 1750; else if yas30_4000s9c=3 then pvcars2= 3750; else if yas30_4000s9c=4 then pvcars2= 7500; else if yas30_4000s9c=5 then pvcars2= 17500; else if yas30_4000s9c=6 then pvcars2= 37500; else if yas30_4000s9c=7 then pvcars2= 75000; else if yas30_4000s9c=8 then pvcars2= 100001; end; end; if yas30_4000s8 in (-1 -2 -3) or yas30_4000s9bl in (-1 -2 -3) or yas30_4000s9bu in (-1 -2 -3) or yas30_4000s9c in (-1 -2 -3) then pvcars2=-3; /*********************assets section 10: furniture value--pvfurn***************************************************/ pvfurn=-4; if yas30_4870>-4 then flag_pvfurn=1; if yas30_4870=1 then pvfurn=2500; else if yas30_4870=2 then pvfurn=7500; else if yas30_4870=3 then pvfurn=17500; else if yas30_4870=4 then pvfurn=37500; else if yas30_4870=5 then pvfurn=75000; else if yas30_4870=6 then pvfurn=175000; else if yas30_4870=7 then pvfurn=250001; else if yas30_4870=8 then pvfurn=0; else if yas30_4870=-1 then pvfurn=-1; else if yas30_4870=-2 then pvfurn=-2; else if yas30_4870=-3 then pvfurn=-3; /***********************assets section 11: other assets-othsav***************************************/ othsav=-4; /* asset30 adjusted for questions skipped or not in r18 */ yas30_4904l = -4; yas30_4904u = -4; yas30_4906 = -4; if yas30_4880=1 then do; flag_othsav=1; if yas30_4900=1 & yas30_4902>=0 then othsav=yas30_4902; else if yas30_4900=2 & yas30_4904l>=0 & yas30_4904u>=0 then do; if yas30_4904u>=yas30_4904l then othsav=(yas30_4904u+yas30_4904l)/2; else othsav=-3; end; if yas30_4900 not in (1,2) or yas30_4902 in (-1,-2) then do; if 1<=yas30_4906<=7 then flag_othsav=2; if yas30_4906=1 then othsav=2500; else if yas30_4906=2 then othsav=7500; else if yas30_4906=3 then othsav=17500; else if yas30_4906=4 then othsav=37500; else if yas30_4906=5 then othsav=75000; else if yas30_4906=6 then othsav=175000; else if yas30_4906=7 then othsav=250001; end; end; if yas30_4880=-1 or yas30_4904l=-1 or yas30_4904u=-1 or yas30_4906=-1 then othsav=-1; if yas30_4880=-2 or yas30_4904l=-2 or yas30_4904u=-2 or yas30_4906=-2 then othsav=-2; if yas30_4880=-3 or yas30_4904l=-3 or yas30_4904u=-3 or yas30_4906=-3 or yas30_4902=-3 then othsav=-3; /***************assets section 12: outstanding loans-loans****************************************/ /* asset30 adjusted for questions skipped or not in r18 */ yas30_4300bu = -4; yas30_4300bl = -4; yas30_4300a2 = -4; loans=-4; if yas30_4300 in (1,2,3) then do; flag_loans=1; if yas30_4300a=1 & yas30_4300a1>=0 then loans=yas30_4300a1; else if yas30_4300a=2 & yas30_4300bl>=0 & yas30_4300bu>=0 then do; if yas30_4300bu>=yas30_4300bl then loans=(yas30_4300bu+yas30_4300bl)/2; else loans=-3; end; if yas30_4300a not in (1,2) or yas30_4300a1 in (-1,-2) then do; if 1<=yas30_4300a2<=7 then flag_loans=2; if yas30_4300a2=1 then loans=2500; else if yas30_4300a2=2 then loans=7500; else if yas30_4300a2=3 then loans=17500; else if yas30_4300a2=4 then loans=37500; else if yas30_4300a2=5 then loans=75000; else if yas30_4300a2=6 then loans=175000; else if yas30_4300a2=7 then loans=250001; end; end; if yas30_4300=-1 or yas30_4300a2=-1 or yas30_4300bl=-1 or yas30_4300bu=-1 then loans=-1; if yas30_4300=-2 or yas30_4300a2=-2 or yas30_4300bu=-2 or yas30_4300bu=-2 then loans=-2; if yas30_4300=-3 or yas30_4300a2=-3 or yas30_4300bu=-3 or yas30_4300bu=-3 or yas30_4300a1=-3 then loans=-3; /*************************************************************; begin liabilities section ************************************************************/ /********************liabilites section 1: mortgage or land contract-mortgag************/ mortgag=-4; if yhou_dlimortgage=1 or yhou_dliown2=1 or yhou_ch1 in (1 2 3 4 5) then do; if yhou_dlimortgage=1 or yhou_ch6=1 then do; flag_mortgag=1; if yhou_ch7=1 & yhou_ch7a>=0 then mortgag=yhou_ch7a; else if yhou_ch7=2 & yhou_ch7bl>=0 & yhou_ch7bu>=0 then do; if yhou_ch7bu>=yhou_ch7bl then mortgag = (yhou_ch7bl+yhou_ch7bu)/2; else mortgag=-3; end; if yhou_ch7 not in (1,2) or yhou_ch7a in (-1,-2) then do; if 1<=yhou_ch7c<=7 then flag_mortgag=2; if yhou_ch7c=1 then mortgag=12500; else if yhou_ch7c=2 then mortgag=37500; else if yhou_ch7c=3 then mortgag=75000; else if yhou_ch7c=4 then mortgag=175000; else if yhou_ch7c=5 then mortgag=375000; else if yhou_ch7c=6 then mortgag=750000; else if yhou_ch7c=7 then mortgag=1000001; end; end; end; if yhou_ch1 in (-1 -2 -3) or yhou_ch6 in (-1 -2 -3) or yhou_ch7bl in (-1 -2 -3) or yhou_ch7bu in (-1 -2 -3) or yhou_ch7c in (-1 -2 -3) then mortgag=-3; /********************liabilities section 2: family mortgage debt-resdebt***********************/ /* asset30 adjusted for questions skipped or not in r18 */ yas30_ch10c = -4; resdebt=-4; if yhou_dlimortgage=1 or yhou_dliown2=1 or yhou_ch1 in (1 2 3 4 5) then do; if yas30_ch9=1 then do; flag_resdebt=1; if yas30_ch10=1 & yas30_ch10a>=0 then resdebt=yas30_ch10a; else if yas30_ch10 not in (1 2) or yas30_ch10a in (-1 -2) then do; if 1==0 then othmort=yhou_ch8a; else if yhou_ch8_1=2 & yhou_ch8bu>=0 & yhou_ch8bl>=0 then do; if yhou_ch8bu>=yhou_ch8bl then othmort=(yhou_ch8bu + yhou_ch8bl)/2; else othmort=-3; end; if yhou_ch8_1 not in (1,2) or yhou_ch8a in (-1,-2) then do; if 1<=yhou_ch8c<=7 then flag_othmort=2; if yhou_ch8c=1 then othmort=12500; else if yhou_ch8c=2 then othmort=37500; else if yhou_ch8c=3 then othmort=75000; else if yhou_ch8c=4 then othmort=175000; else if yhou_ch8c=5 then othmort=375000; else if yhou_ch8c=6 then othmort=750000; else if yhou_ch8c=7 then othmort=1000001; end; end; end; if yhou_ch1 in (-1 -2 -3) or yhou_ch8 in (-1 -2 -3) or yhou_ch8bl in (-1 -2 -3) or yhou_ch8bu in (-1 -2 -3) or yhou_ch8c in (-1 -2 -3) then othmort=-3; if yas30_age30elig2 ne 1 then do; mortgag=-4; resdebt=-4; othmort=-4; end; /*************liabilities section 4: car debt-cardebt1*********************************/ cardebt1=-4; /* asset30 adjusted for questions skipped or not in r18 */ yas30_4844l = -4; yas30_4844u = -4; yas30_4846 = -4; if yas30_4790=1 then do; flag_cardebt1=1; if yas30_4840=1 & yas30_4842>=0 then cardebt1=yas30_4842; if yas30_4840=2 and yas30_4844l >=0 and yas30_4844u >=0 then do; if yas30_4844u>= yas30_4844l then cardebt1=(yas30_4844u+ yas30_4844l)/2; else cardebt1=-3; end; if yas30_4840 not in (1,2) or yas30_4842 in (-1, -2) then do; if 1 <=yas30_4846<=7 then flag_cardebt1=2; if yas30_4846=1 then cardebt1=2500; else if yas30_4846=2 then cardebt1=7500; else if yas30_4846=3 then cardebt1=17500; else if yas30_4846=4 then cardebt1=37500; else if yas30_4846=5 then cardebt1=75000; else if yas30_4846=6 then cardebt1=175000; else if yas30_4846=7 then cardebt1=250001; end; end; if yas30_4790=-1 or yas30_4844l=-1 or yas30_4844u=-1 or yas30_4846=-1 then cardebt1=-1; if yas30_4790=-2 or yas30_4844l=-2 or yas30_4844u=-2 or yas30_4846=-2 then cardebt1=-2; if yas30_4790=-3 or yas30_4844l=-3 or yas30_4844u=-3 or yas30_4846=-3 or yas30_4842=-3 then cardebt1=-3; /***************************************************************************; liabilities section 4.2: secondary info source for car debt --cardebt2 **************************************************************************/ /* asset30 adjusted for questions skipped or not in r18 */ yas30_4000s10bl = -4; yas30_4000s10bu = -4; yas30_4000s10c = -4; cardebt2=-4; if yas30_4000s8 =1 then do; flag_cardebt2=1; if yas30_4000s10 =1 and yas30_4000s10a>=0 then cardebt2= yas30_4000s10a; else if yas30_4000s10 = 2 and yas30_4000s10bl>=0 and yas30_4000s10bu>=0 then do; if yas30_4000s10bu>= yas30_4000s10bl then cardebt2=(yas30_4000s10bu+yas30_4000s10bl)/2; else cardebt2=-3; end; if yas30_4000s10 not in (1,2) or yas30_4000s10a in (-1,-2) then do; if 1<= yas30_4000s10c <=8 then flag_cardebt2=2; if yas30_4000s10c=1 then cardebt2= 500; else if yas30_4000s10c=2 then cardebt2= 1750; else if yas30_4000s10c=3 then cardebt2= 3750; else if yas30_4000s10c=4 then cardebt2= 7500; else if yas30_4000s10c=5 then cardebt2= 17500; else if yas30_4000s10c=6 then cardebt2= 37500; else if yas30_4000s10c=7 then cardebt2= 75000; else if yas30_4000s10c=8 then cardebt2= 100001; end; end; if yas30_4000s8=-1 or yas30_4000s10bl=-1 or yas30_4000s10bu=-1 or yas30_4000s10c=-1 then cardebt2=-1; if yas30_4000s8=-2 or yas30_4000s10bl=-2 or yas30_4000s10bu=-2 or yas30_4000s10c=-2 then cardebt2=-2; if yas30_4000s8=-3 or yas30_4000s10bl=-3 or yas30_4000s10bu=-3 or yas30_4000s10c=-3 then cardebt2=-3; /*********************liabilities section 5: personal education loan-famedudebt****************/ famedudebt=-4; /* asset30 adjusted for questions skipped or not in r18 */ yas30_5013l = -4; yas30_5013u = -4; if yas30_5011=1 then do; flag_famedudebt=1; if yas30_5011a=1 & yas30_5012>=0 then famedudebt=yas30_5012; else if yas30_5011a=2 & yas30_5013l>=0 & yas30_5013u>=0 then do; if yas30_5013u>=yas30_5013l then famedudebt=(yas30_5013l+yas30_5013u)/2; else famedudebt=-3; end; if yas30_5011a not in (1,2) or yas30_5012 in (-1,-2) then do; if 1<=yas30_5014<=8 then flag_famedudebt=2; if yas30_5014=1 then famedudebt=500; else if yas30_5014=2 then famedudebt=1750; else if yas30_5014=3 then famedudebt=3750; else if yas30_5014=4 then famedudebt=7500; else if yas30_5014=5 then famedudebt=17500; else if yas30_5014=6 then famedudebt=37500; else if yas30_5014=7 then famedudebt=75000; else if yas30_5014=8 then famedudebt=100001; end; end; if yas30_5011=-1 or yas30_5013u=-1 or yas30_5013l=-1 or yas30_5014=-1 then famedudebt=-1; if yas30_5011=-2 or yas30_5013u=-2 or yas30_5013l=-2 or yas30_5014=-2 then famedudebt=-2; if yas30_5011=-3 or yas30_5013u=-3 or yas30_5013l=-3 or yas30_5014=-3 or yas30_5012=-3 then famedudebt=-3; if yas30_age30elig2=1 & famedudebt=-4 & famedudebt_c ne 0 then do; flag_famedudebt_c=1; famedudebt=famedudebt_c; end; /****************liabilities section 6: government education loan-govdebt***************/ govdebt=-4; /* asset30 adjusted for questions skipped or not in r18 */ yas30_5017u = -4; yas30_5017l = -4; if yas30_5015=1 then do; flag_govdebt=1; if yas30_5015a=1 & yas30_5016>=0 then govdebt=yas30_5016; else if yas30_5015a=2 & yas30_5017u>=0 & yas30_5017l>=0 then do; if yas30_5017u>=yas30_5017l then govdebt=(yas30_5017u + yas30_5017l)/2; else govdebt=-3; end; if yas30_5015a not in (1,2) or yas30_5016 in (-1,-2) then do; if 1<=yas30_5018<=8 then flag_govdebt=2; if yas30_5018=1 then govdebt=500; else if yas30_5018=2 then govdebt =1750; else if yas30_5018=3 then govdebt=3750; else if yas30_5018=4 then govdebt=7500; else if yas30_5018=5 then govdebt=17500; else if yas30_5018=6 then govdebt=37500; else if yas30_5018=7 then govdebt=75000; else if yas30_5018=8 then govdebt=100001; end; end; if yas30_5015=-1 or yas30_5017u=-1 or yas30_5017l=-1 or yas30_5018=-1 then govdebt=-1; if yas30_5015=-2 or yas30_5017u=-2 or yas30_5017l=-2 or yas30_5018=-2 then govdebt=-2; if yas30_5015=-3 or yas30_5017u=-3 or yas30_5017l=-3 or yas30_5018=-3 or yas30_5016=-3 then govdebt=-3; if yas30_age30elig2=1 & govdebt=-4 & govdebt_c ne 0 then do; flag_govdebt_c=1; govdebt=govdebt_c; end; /****************liabilities30 section 6a: spouse-partner education loan***************/ sparedudebt=-4; if yas30_5040_new=1 then do; flag_sparedudebt=1; if yas30_5074_new=1 & yas30_5082_new>=0 then sparedudebt=yas30_5082_new; else if yas30_5074_new=2 & yas30_5084_newu>=0 & yas30_5084_newl>=0 then do; if yas30_5084_newu>=yas30_5084_newl then sparedudebt=(yas30_5084_newu + yas30_5084_newl)/2; else sparedudebt=-3; end; if yas30_5074_new not in (1,2) or yas30_5082_new in (-1,-2) then do; if 1<=yas30_5086_new<=8 then flag_sparedudebt=2; if yas30_5086_new=1 then sparedudebt=2500; else if yas30_5086_new=2 then sparedudebt=7500; else if yas30_5086_new=3 then sparedudebt=17500; else if yas30_5086_new=4 then sparedudebt=37500; else if yas30_5086_new=5 then sparedudebt=75000; else if yas30_5086_new=6 then sparedudebt=175000; else if yas30_5086_new=7 then sparedudebt=250001; end; end; if yas30_5040_new=-1 or yas30_5084_newu=-1 or yas30_5084_newl=-1 or yas30_5086_new=-1 then sparedudebt=-3; if yas30_5040_new=-2 or yas30_5084_newu=-2 or yas30_5084_newl=-2 or yas30_5086_new=-2 then sparedudebt=-3; if yas30_5040_new=-3 or yas30_5084_newu=-3 or yas30_5084_newl=-3 or yas30_5086_new=-3 or yas30_5082_new=-3 then sparedudebt=-3; if yas30_age30elig2=1 & sparedudebt > 0 then do; flag_sparedudebt_c=1; end; /**********************liabilities section 7: other debt to family or relatives--famdebt***********/ /* asset30 adjusted for questions skipped or not in r18 */ yas30_5174l = -4; yas30_5174u = -4; yas30_5176 = -4; famdebt=-4; if yas30_5130=1 then do; flag_famdebt=1; if yas30_5170=1 & yas30_5172>=0 then famdebt=yas30_5172; else if yas30_5170=2 & yas30_5174l>=0 & yas30_5174u>=0 then do; if yas30_5174u>=yas30_5174l then famdebt = (yas30_5174u+yas30_5174l)/2; else famdebt=-3; end; if yas30_5170 not in (1,2) or yas30_5172 in (-1, -2) then do; if 1<=yas30_5176<=9 then flag_famdebt=2; if yas30_5176=1 then famdebt=500; else if yas30_5176=2 then famdebt=1750; else if yas30_5176=3 then famdebt=3750; else if yas30_5176=4 then famdebt=7500; else if yas30_5176=5 then famdebt=17500; else if yas30_5176=6 then famdebt=37500; else if yas30_5176=7 then famdebt=75000; else if yas30_5176=8 then famdebt=175000; else if yas30_5176=9 then famdebt=250001; end; end; if yas30_5130=-1 or yas30_5176=-1 or yas30_5174l=-1 or yas30_5174u=-1 then famdebt=-1; if yas30_5130=-2 or yas30_5176=-2 or yas30_5174l=-2 or yas30_5174u=-2 then famdebt=-2; if yas30_5130=-3 or yas30_5176=-3 or yas30_5174l=-3 or yas30_5174u=-3 or yas30_5172=-3 then famdebt=-3; /*************************liabilities section 8: other debt--othdebt**************/ /* asset30 adjusted for questions skipped or not in r18 */ yas30_5210c3u = -4; yas30_5210c3l = -4; yas30_5210a3u = -4; yas30_5210a3l = -4; yas30_5210c4 = -4; yas30_5210d3l = -4; yas30_5210d3u = -4; yas30_5210d4 = -4; othdebt1=-4; othdebt2=-4; othdebt3=-4; if yas30_5210aa=0 | yas30_5210aa = -4 then do; flag_othdebt1=1; if yas30_5210a1=1 & yas30_5210a2>=0 then othdebt1=yas30_5210a2; else if yas30_5210a1=2 & yas30_5210a3u>=0 & yas30_5210a3l>=0 then do; if yas30_5210a3u>=yas30_5210a3l then othdebt1= (yas30_5210a3u + yas30_5210a3l)/2; else othdebt1=-3; end; if yas30_5210a1 not in (1,2) or yas30_5210a2 in (-1,-2) then do; if 1<=yas30_5210a4<=8 then flag_othdebt1=2; if yas30_5210a4=1 then othdebt1=500; else if yas30_5210a4=2 then othdebt1=1750; else if yas30_5210a4=3 then othdebt1=3750; else if yas30_5210a4=4 then othdebt1=7500; else if yas30_5210a4=5 then othdebt1=17500; else if yas30_5210a4=6 then othdebt1=37500; else if yas30_5210a4=7 then othdebt1=75000; else if yas30_5210a4=8 then othdebt1=100001; end; end; if yas30_5210a =-1 or yas30_5210aa=-1 or yas30_5210a3u=-1 or yas30_5210a3l=-1 or yas30_5210a4=-1 then othdebt1=-1; if yas30_5210a =-2 or yas30_5210aa=-2 or yas30_5210a3u=-2 or yas30_5210a3l=-2 or yas30_5210a4=-2 then othdebt1=-2; if yas30_5210a =-3 or yas30_5210aa=-3 or yas30_5210a3u=-3 or yas30_5210a3l=-3 or yas30_5210a4=-3 or yas30_5210a2=-3 then othdebt1=-3; if yas30_5210b1=1 then do; flag_othdebt2=1; if yas30_5210c1=1 & yas30_5210c2>=0 then othdebt2=yas30_5210c2; else if yas30_5210c1=2 & yas30_5210c3u>=0 & yas30_5210c3l>=0 then do; if yas30_5210c3u>=yas30_5210c3l then othdebt2= (yas30_5210c3u + yas30_5210c3l)/2; else othdebt2=-3; end; if yas30_5210c1 not in (1,2) or yas30_5210c2 in (-1, -2) then do; if 1<=yas30_5210c4<=7 then flag_othdebt2=2; if yas30_5210c4=1 then othdebt2=500; else if yas30_5210c4=2 then othdebt2=1750; else if yas30_5210c4=3 then othdebt2=3750; else if yas30_5210c4=4 then othdebt2=7500; else if yas30_5210c4=5 then othdebt2=17500; else if yas30_5210c4=6 then othdebt2=37500; else if yas30_5210c4=7 then othdebt2=50001; end; end; if yas30_5210b1=-1 or yas30_5210c3u=-1 or yas30_5210c3l=-1 or yas30_5210c4=-1 then othdebt2=-1; if yas30_5210b1=-2 or yas30_5210c3u=-2 or yas30_5210c3l=-2 or yas30_5210c4=-2 then othdebt2=-1; if yas30_5210b1=-3 or yas30_5210c3u=-3 or yas30_5210c3l=-3 or yas30_5210c4=-3 or yas30_5210c2=-3 then othdebt2=-3; if yas30_5210d1=1 then do; flag_othdebt3=1; if yas30_5210d1a=1 & yas30_5210d2>=0 then othdebt3=yas30_5210d2; else if yas30_5210d1a=2 & yas30_5210d3l>=0 & yas30_5210d3u>=0 then do; if yas30_5210d3u>=yas30_5210d3l then othdebt3 = (yas30_5210d3l+yas30_5210d3u)/2; else othdebt3=-3; end; if yas30_5210d1a not in (1,2) or yas30_5210d2 in (-1,-2) then do; if 1<=yas30_5210d4<=7 then flag_othdebt3=2; if yas30_5210d4=1 then othdebt3=500; else if yas30_5210d4=2 then othdebt3=1750; else if yas30_5210d4=3 then othdebt3=3750; else if yas30_5210d4=4 then othdebt3=7500; else if yas30_5210d4=5 then othdebt3=17500; else if yas30_5210d4=6 then othdebt3=37500; else if yas30_5210d4=7 then othdebt3=50001; end; end; if yas30_5210d1=-1 or yas30_5210d3l=-1 or yas30_5210d3u=-1 or yas30_5210d4=-1 then othdebt3=-1; if yas30_5210d1=-2 or yas30_5210d3l=-2 or yas30_5210d3u=-2 or yas30_5210d4=-2 then othdebt3=-2; if yas30_5210d1=-3 or yas30_5210d3l=-3 or yas30_5210d3u=-3 or yas30_5210d4=-3 or yas30_5210d2=-3 then othdebt3=-3; /************************************************************************************ end of data cleaning for liabilities and assets begin calculations: **********************************************************************************/ array varsasst (*) house_value pvbuss_01-pvbuss_04 othreal ira_01-ira_07 retdsav banksav bonds stocks pvcars1 pvcars2 pvfurn othsav loans; array varsliab (*) mortgag resdebt othmort cardebt1 cardebt2 famedudebt govdebt sparedudebt othdebt1 othdebt2 othdebt3 famdebt; array flgsasst (*) flag_house flag_pvbuss flag_othreal flag_ira flag_retdsav flag_banksav flag_bonds flag_stocks flag_pvcars1 flag_pvcars2 flag_pvfurn flag_othsav flag_loans; array flgsliab (*) flag_mortgag flag_resdebt flag_othmort flag_cardebt1 flag_cardebt2 flag_famedudebt flag_govdebt flag_sparedudebt flag_othdebt1 flag_othdebt2 flag_othdebt3 flag_famdebt; array ahousedebt (*) mortgag resdebt othmort; array afinance (*) ira_01-ira_07 retdsav banksav bonds stocks othsav loans; array anonfinance (*) pvbuss_01-pvbuss_04 othreal pvcars1 pvcars2 pvfurn; array adebt (*) cardebt1 cardebt2 famedudebt govdebt sparedudebt othdebt1 othdebt2 othdebt3 famdebt; array flgshsdt(*) flag_mortgag flag_resdebt flag_othmort; array flgsfin(*) flag_ira flag_retdsav flag_banksav flag_bonds flag_stocks flag_othsav flag_loans; array flgsnonfin(*) flag_pvbuss flag_othreal flag_pvcars1 flag_pvcars2 flag_pvfurn; array flgsdebt(*) flag_cardebt1 flag_cardebt2 flag_famedudebt flag_govdebt flag_sparedudebt flag_othdebt1 flag_othdebt2 flag_othdebt3 flag_famdebt; hhworthy=-4; assets=-4; liabilities=-4; housedebt=-4; finance=-4; nonfinance=-4; debt=-4; if yas30_age30elig2=1 then do; hhworthy=0; assets=0; housedebt=0; liabilities=0; finance=0; nonfinance=0; debt=0; do i=1 to dim(varsasst); if varsasst(i) not in (-1,-2,-3,-4,-5) then assets=assets+varsasst(i); if varsasst(i) in (-1,-2,-3) then flagsasst=-3; end; do i=1 to dim(varsliab); if varsliab(i) not in (-1,-2,-3,-4,-5) then liabilities=liabilities+varsliab(i); if varsliab(i) in (-1,-2,-3) then flagsliab=-3; end; hhworthy=assets-liabilities; do i=1 to dim(ahousedebt); if ahousedebt(i) not in (-1,-2,-3,-4,-5) then housedebt=housedebt+ahousedebt(i); if ahousedebt(i) in (-1,-2,-3) then flagshsdt=-3; end; do i=1 to dim(afinance); if afinance(i) not in (-1,-2,-3,-4,-5) then finance=finance+afinance(i); if afinance(i) in (-1,-2,-3) then flagsfin=-3; end; do i=1 to dim(anonfinance); if anonfinance(i) not in (-1,-2,-3,-4,-5) then nonfinance=nonfinance+anonfinance(i); if anonfinance(i) in (-1,-2,-3) then flagsnonfin=-3; end; do i=1 to dim(adebt); if adebt(i) not in (-1,-2,-3,-4,-5) then debt=debt+adebt(i); if adebt(i) in (-1,-2,-3) then flagsdebt=-3; end; end; /*** code hhworthy as an invalid skip for those who did not give valid responses */ do i=1 to dim(varsasst); if varsasst(i)=-1 then do; hhworthy=-1; assets=-1; invskphhy=1; end; end; do i=1 to dim(varsliab); if varsliab(i)=-1 then do; hhworthy=-1; liabilities=-1; invskphhy=1; end; end; do i=1 to dim(varsasst); if varsasst(i)=-2 then do; hhworthy=-2; assets=-2; invskphhy=2; end; end; do i=1 to dim(varsliab); if varsliab(i)=-2 then do; hhworthy=-2; liabilities=-2; invskphhy=2; end; end; do i=1 to dim(varsasst); if varsasst(i)=-3 then do; hhworthy=-3; assets=-3; invskphhy=3; end; end; do i=1 to dim(varsliab); if varsliab(i)=-3 then do; hhworthy=-3; liabilities=-3; invskphhy=3; end; end; do i=1 to dim(ahousedebt); if ahousedebt(i)=-1 then housedebt=-1; else if ahousedebt(i)=-2 then housedebt=-2; else if ahousedebt(i)=-3 then housedebt=-3; end; do i=1 to dim(afinance); if afinance(i)=-1 then finance=-1; else if afinance(i)=-2 then finance=-2; else if afinance(i)=-3 then finance=-3; end; do i=1 to dim(anonfinance); if anonfinance(i)=-1 then nonfinance=-1; else if anonfinance(i)=-2 then nonfinance=-2; else if anonfinance(i)=-3 then nonfinance=-3; end; do i=1 to dim(adebt); if adebt(i)=-1 then debt=-1; else if adebt(i)=-2 then debt=-2; else if adebt(i)=-3 then debt=-3; end; hhworthy=round(hhworthy,1); assets=round(assets,1); liabilities=round(liabilities,1); housedebt=round(housedebt,1); house_value=round(house_value,1); finance=round(finance,1); nonfinance=round(nonfinance,1); debt=round(debt,1); /** change all the -1s, -2s to -3s. **/ array finalv(*) hhworthy assets liabilities housedebt house_value finance nonfinance debt; do i=1 to dim(finalv); if finalv(i) in (-1,-2) then finalv(i)=-3; end; ***** current round vs CVC; array cvprevrd(7) cvc_hh_net_worth_30 cvc_house_value_30 cvc_house_debt_30 cvc_house_type_30 cvc_assets_financial_30 cvc_assets_nonfinancial_30 cvc_assets_debts_30; do i=1 to dim(cvprevrd); if cvprevrd(i) ~=-4 then cvpreval=1; end; array curr(7) hhworthy house_value housedebt housing_type finance nonfinance debt ; do i=1 to dim(curr); if curr(i) not in (-4,-5,.) then currval=1; end; assetrd_cvc=-4 ; array cvc(7) hhworthy_cvc house_value_cvc housedebt_cvc housing_type_cvc finance_cvc nonfinance_cvc debt_cvc ; do i = 1 to dim(cvc); cvc(i)=-4; end; * curr vs cvc from the prev round; if cvpreval =1 & cvc_assets_rnd_30 not in (14 15 16 17) then flag1=1; if cvpreval =1 & currval=1 then flag2=1; if currval=1 & cvc_assets_rnd_30 in (14 15 16 17) then flag3=1; if cvpreval =1 & cvc_assets_rnd_30 in (14 15 16 17) & currval~=1 then do i = 1 to 7 ; assetrd_cvc= cvc_assets_rnd_30; cvc(i)=cvprevrd(i); end; if cvpreval ~=1 & cvc_assets_rnd_30 not in (14 15 16 17) & currval=1 then do i = 1 to 7 ; assetrd_cvc=18; cvc(i)=curr(i); end; /* top coding. (there is no bottom coding.) */ if hhworthy_cvc ge 600000 then hhworthy_cvc=600000; if house_value_cvc ge 425000 then house_value_cvc=425000; if housedebt_cvc ge 325000 then housedebt_cvc=325000; if finance_cvc ge 300000 then finance_cvc=300000; if nonfinance_cvc ge 600000 then nonfinance_cvc=600000; if debt_cvc ge 370000 then debt_cvc=370000; endsas;