----------------------------------------------------------------------------------------------- log: /disk/nber10/SCCS/sipp/2004/wealth1993t7.log log type: text opened on: 4 Aug 2009, 12:52:13 . set more off . ** by Jean Roth, jroth@nber.org , 2009-07-31 . set mem 500m (512000k) . use ~/text/sipp93t7 . ********************************************************************** . ** Checking that sample unit and person ids are unique identifiers . duplicates report id addid pnum Duplicates in terms of id addid pnum -------------------------------------- copies | observations surplus ----------+--------------------------- 1 | 50652 0 2 | 10 5 -------------------------------------- . ** id addid pnum is a unique id in the core file, but . ** sipp93t7 has 10 duplicates in 50,662 records. . ** Adding either entry or pinx yields a unique id . describe pinx entry storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- pinx byte %8.0g Person index from core entry str2 %9s Edited entry address id address of the . duplicates report id addid pnum entry Duplicates in terms of id addid pnum entry -------------------------------------- copies | observations surplus ----------+--------------------------- 1 | 50662 0 -------------------------------------- . assert `r(unique_value)'==`r(N)' . duplicates report id addid pnum pinx Duplicates in terms of id addid pnum pinx -------------------------------------- copies | observations surplus ----------+--------------------------- 1 | 50662 0 -------------------------------------- . assert `r(unique_value)'==`r(N)' . duplicates tag id addid pnum, gen(dup) Duplicates in terms of id addid pnum . list id addid pnum entry pinx if dup +-----------------------------------------+ | id addid pnum entry pinx | |-----------------------------------------| 8289. | 183369814 00 601 41 2 | 8292. | 183369814 00 601 61 6 | 19820. | 407451487 00 501 51 4 | 19821. | 407451487 00 501 52 2 | 24106. | 511358715 00 601 61 6 | |-----------------------------------------| 24107. | 511358715 00 602 61 7 | 24109. | 511358715 00 601 62 9 | 24110. | 511358715 00 602 62 10 | 28904. | 582369344 00 601 61 2 | 28905. | 582369344 00 601 62 4 | +-----------------------------------------+ . ** Note that a sample unit may contain multiple households identified by addid . ********************************************************************** . ** Total Wealth . describe hh_twlth hh_theq hh_vehcl hh_beq hh_intbk hh_intot hh_stk hh_ore hh_otast hh_ira storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_twlth double %10.0g Total household wealth hh_theq double %10.0g Home equity hh_vehcl double %10.0g Net equity in vehicles hh_beq double %10.0g Business equity hh_intbk long %12.0g Interest earning, assets held in banki hh_intot long %12.0g Interest earning, assets held in other hh_stk double %10.0g Equity in stocks and mutual fund share hh_ore double %10.0g Real estate (other than own home) equi hh_otast long %12.0g Other assets hh_ira long %12.0g IRA and KEOGH accounts . sum hh_twlth hh_theq hh_vehcl hh_beq hh_intbk hh_intot hh_stk hh_ore hh_otast hh_ira Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_twlth | 50662 98681.78 160251.3 -119425 3026341 hh_theq | 50662 43630.97 61566.1 -22500 346000 hh_vehcl | 50662 8595.83 9047.967 -13500 98773 hh_beq | 50662 6565.122 42368.42 -140000 987200 hh_intbk | 50662 7177.12 19301.86 0 325000 -------------+-------------------------------------------------------- hh_intot | 50662 3335.068 27246.4 0 949997 hh_stk | 50662 7866.713 46661.51 -7420 1999998 hh_ore | 50662 10586.5 52554.67 0 1080000 hh_otast | 50662 3929.707 28741.01 0 982364 hh_ira | 50662 6994.748 24184.39 0 460500 . ** wealth needs to be a double to preserve precision . gen double wealth = hh_theq+hh_vehcl+hh_beq+hh_intbk+hh_intot+hh_stk +hh_ore+hh_otast+hh_ira . assert hh_twlth == wealth . sum wealth Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- wealth | 50662 98681.78 160251.3 -119425 3026341 . ********************************************************************** . ** Home Equity . describe hh_theq tm8598 tm8630 hh_mortg storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_theq double %10.0g Home equity tm8598 long %31.0g tm8598l What is the current value of this tm8630 long %22.0g tm8630l How much do you think this mobile home hh_mortg long %12.0g Total debt owed on home . gen home = (tm8598+tm8630)-hh_mortg . assert hh_theq == home . sum home Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- home | 50662 43630.97 61566.1 -22500 346000 . ********************************************************************** . ** Vehicle Equity . describe hh_vehcl tmcarvl1 tm8760 tmcarvl2 tm8761 tmcarvl3 tm8762 tm8788 tm8796 tm8790 tm8798 storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_vehcl double %10.0g Net equity in vehicles tmcarvl1 long %12.0g Present car value(s) tm8760 long %14.0g tm8760l How much is currently owed for this tmcarvl2 long %12.0g Present car value(s) tm8761 long %14.0g tm8761l How much is currently owed for this tmcarvl3 long %12.0g Present car value(s) tm8762 long %14.0g tm8762l How much is currently owed for this tm8788 long %14.0g tm8788l If this vehicle were sold, what would tm8796 long %14.0g tm8796l How much is currently owed for this tm8790 long %14.0g tm8790l If this vehicle were sold, what would tm8798 long %31.0g tm8798l How much is currently owed for this . sum hh_vehcl tmcarvl1 tm8760 tmcarvl2 tm8761 tmcarvl3 tm8762 tm8788 tm8796 tm8790 tm8798 Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_vehcl | 50662 8595.83 9047.967 -13500 98773 tmcarvl1 | 50662 7053.336 6622.443 0 32000 tm8760 | 50662 2493.434 4609.091 0 22000 tmcarvl2 | 50662 2599.281 4181.017 0 31450 tm8761 | 50662 505.7854 2038.336 0 22000 -------------+-------------------------------------------------------- tmcarvl3 | 50662 520.278 1806.839 0 29000 tm8762 | 50662 62.62112 665.4659 0 22000 tm8788 | 50662 1050.375 3197.035 0 25000 tm8796 | 50662 171.4166 1826.477 0 40000 tm8790 | 50662 127.0434 1432.923 0 35000 -------------+-------------------------------------------------------- tm8798 | 50662 25.92476 870.9813 0 56000 . ** This is the formula given by Census; however, hh_vehcl appears to have omitted tm8761, the > amount owed on the vehicle . gen vehicle = (tmcarvl1-tm8760)+(tmcarvl2-tm8761)+(tmcarvl3-tm8762)+(tm8788-tm8796)+(tm8790-t > m8798) . ** Census numbers appear off by $2 . ** NOTE: This formula replicates hh_vehcl, though tm8761, I think, should have been subtract > ed from tmcarvl2 . gen vehicle_no_tm8761 = (tmcarvl1-tm8760)+(tmcarvl2)+(tmcarvl3-tm8762)+(tm8788-tm8796)+(tm879 > 0-tm8798) . assert abs(hh_vehcl-vehicle_no_tm8761) <=2 . ** Skipping this test due to tm8761 discrepancy . *assert abs(hh_vehcl-vehicle)<=2 . ** NOTE: tmcarvl* looks consistent with 2004t3's tcarval* . ** it affects these records: . sum tm8761 if tm8761!=0 Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- tm8761 | 5339 4799.419 4338.317 6 22000 . **list id addid pnum *veh* tmcarvl1 tm8760 tmcarvl2 tm8761 tmcarvl3 tm8762 tm8788 tm8796 tm8 > 790 tm8798 in 1/500 , nol . *list id addid pnum *veh* tmcarvl1 tm8760 tmcarvl2 tm8761 tmcarvl3 tm8762 tm8788 tm8796 tm87 > 90 tm8798 if vdiff>0, nol . sum vehicle Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- vehicle | 50662 8091.131 8603.782 -13500 98775 . ********************************************************************** . ** Business Equity . ** A Note from "Survey of Income and Program Participation 2004 Panel Wave 3 . ** Assets and Liabilities Recode Edit Specifications": . ** NOTE: "The following specifications were applied to the Census Bureau's internal file. T > hey cannot be . ** NOTE replicated using the public use files due to recoding of the variables pertaining t > o the second business." . ** NOTES from the 1993t7 data dictionary says: . ** NOTE "(TM8008 maybe combined with TM8024 for topcoding to 500000 for public use file)" . ** NOTE "(TM8012 maybe combined with TM8028 for topcoding to 140000 for public use file)" . ** NOTE TM8024: 1="Value combined with TM8008 for public use file" rather than a value . ** NOTE TM8028: 1="Value combined with TM8012 for public use file" rather than a value . describe hh_beq tm8004 tm8008 tm8012 tm8020 tm8024 tm8028 storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_beq double %10.0g Business equity tm8004 int %14.0g tm8004l As of (last day of reference period) tm8008 long %21.0g tm8008l As of (last day of reference period) tm8012 long %21.0g tm8012l As of (last day of reference period) tm8020 int %14.0g tm8020l As of (last day of reference period) tm8024 long %21.0g tm8024l As of (last day of reference period) tm8028 long %21.0g tm8028l As of (last day of reference period) . *sum hh_beq tm8004 tm8008 tm8012 tm8020 tm8024 tm8028 . ** Some variables have -3 for 'None' . recode tm8008 ( -3 = 0 ), gen(tm8008_a) (590 differences between tm8008 and tm8008_a) . recode tm8012 ( -3 = 0 ), gen(tm8012_a) (1231 differences between tm8012 and tm8012_a) . ** NOTE: for calculations only: If TM8002 = 1, then TM8004 = 100 . assert tm8004==0 if tm8002==1 . replace tm8004=100 if tm8002==1 (1283 real changes made) . ** NOTE: for calculations only: If TM8018 = 1, then TM8020 = 100 . assert tm8020==0 if tm8018==1 . replace tm8020=100 if tm8018==1 (56 real changes made) . sum hh_beq tm8004 tm8008_a tm8012_a tm8020 tm8024 tm8028 Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_beq | 50662 6565.122 42368.42 -140000 987200 tm8004 | 50662 3.628479 17.86379 0 100 tm8008_a | 50662 3483.147 36194.75 0 750000 tm8012_a | 50662 838.8721 10825.04 0 240000 tm8020 | 50662 .1934191 3.902069 0 100 -------------+-------------------------------------------------------- tm8024 | 50662 .0025858 .0507851 0 1 tm8028 | 50662 .0025858 .0507851 0 1 . ** Some variables have odd formats . format %14.0g tm8008* tm8024 tm8028 . *** The value of all the person's businesses in the household is applied to the household . *** So, calculating person's business equity first, then applying the sum of all person's to > the household . *gen p_business = (tm8004/100*(tm8008_a-tm8012_a))+(tm8020/100*(tm8024-tm8028)) . ** Generating a count of households with people who own one businesses . egen bus1=count(hh_beq) if tm8004 !=0 | tm8008 !=0 | tm8012 !=0 , by(id addid) (48472 missing values generated) . ** Placing records with business owner flag at top of household records . sort id addid bus1 . ** Applying the business owner in the household flag to all household records . by id addid: replace bus1 = bus1[1] (3716 real changes made) . replace bus1 = 0 if bus1 == . (44756 real changes made) . ** Generating a count of households with people who own a second businesses . egen bus2=count(hh_beq) if tm8020 !=0 | tm8024 !=0 | tm8028 !=0 , by(id addid) (50522 missing values generated) . ** Placing records with business owner flag at top of household records . sort id addid bus2 . ** Applying the business owner in the household flag to all household records . by id addid: replace bus2 = bus2[1] (276 real changes made) . replace bus2 = 0 if bus2 == . (50246 real changes made) . ** Sometimes, a spouse with have tm8004=50 and zero-valued tm8008 & tm8012, values need filli > ng to for correct calculation . gsort id addid -tm8004 -tm8008_a -tm8012_a . replace tm8008_a=tm8008_a[_n-1] if id==id[_n-1] & addid==addid[_n-1] & tm8004!=0 & tm8008_a== > 0 & tm8008 != -3 (91 real changes made) . replace tm8012_a=tm8012_a[_n-1] if id==id[_n-1] & addid==addid[_n-1] & tm8004!=0 & tm8012_a== > 0 & tm8012 != -3 (66 real changes made) . ** 2nd business data gets merged with the 1st, so excluding 2nd busi owners households from c > heck . gen p_business1 = (tm8004/100*(tm8008_a-tm8012_a)) if bus2==0 (416 missing values generated) . bysort id addid: egen business1=sum(p_business1) . ** Truncating to the integer value works a bit better than rounding . replace business1=int(business1) (21 real changes made) . ** Checking that calculated household business equity is within $1 of Census' . assert abs(hh_beq-business1)<=1 if bus2==0 & bus1==0 . sum business1 if bus2==0 & bus1==0 Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- business1 | 44756 0 0 0 0 . ** Not doing that well for households with persons with businesses . ** NOTE: Assertion would fail . **assert abs(hh_beq-business1)<=1 if bus2==0 & bus1==1 . count if bus1<=1 49815 . count if abs(hh_beq-business1)<=1 & bus2==0 & bus1==1 4735 . ** NOTE: Assertion would fail . **assert abs(hh_beq-business1)<=1 if bus2==0 & bus1==2 . count if bus1==2 823 . count if abs(hh_beq-business1)<=1 & bus2==0 & bus1==2 668 . sort id addid pnum . ** For three households, there are values in tm8004 and zeros in tm8008, tm8012 and non-zero > hh_beq. Inconsistent. . *list id addid pnum hh_beq business1 p_business1 tm8004 tm8008* tm8012_a tm8020 tm8024 tm8028 > bus1 bus2 if bus2==0 & bus1<=1 & abs(hh_beq-business1)>1, nol . *list id addid pnum hh_beq business1 p_business1 tm8004 tm8008_a tm8012_a tm8020 tm8024 tm802 > 8 bus? if id==537796461|id==669358648|id==801115382, nol . *list id addid pnum hh_beq business1 p_business1 tm8004 tm8008* tm8012_a tm8020 tm8024 tm8028 > bus1 bus2 if bus2==0 & bus1==2 & abs(hh_beq-business1)>1, nol . *list id addid pnum hh_beq business1 p_business1 tm8004 tm8008_a tm8012_a tm8020 tm8024 tm802 > 8 bus? if id==164369228|id==267651882|id==283074085|id==301701098, nol . . ********************************************************************** . ** Bank Interest . ** Again, the sum of each person's wealth is applied to the household . describe hh_intbk tm4314 tm4322 storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_intbk long %12.0g Interest earning, assets held in banki tm4314 long %12.0g SC4314 from the core file tm4322 long %12.0g SC4322 from the core file . ** Some variables have -3 for 'None' . recode tm4314 ( -3 = 0 ), gen(tm4314_a) (50 differences between tm4314 and tm4314_a) . recode tm4322 ( -3 = 0 ), gen(tm4322_a) (126 differences between tm4322 and tm4322_a) . sum hh_intbk tm4314_a tm4322_a Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_intbk | 50662 7177.12 19301.86 0 325000 tm4314_a | 50662 1495.073 9185.299 0 125000 tm4322_a | 50662 1598.232 8746.796 0 100000 . gen p_bank_int = tm4314_a+tm4322_a . bysort id addid: egen bank_int=sum(p_bank_int) . assert hh_intbk == bank_int . sum bank_int Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- bank_int | 50662 7177.12 19301.86 0 325000 . ********************************************************************** . ** Other Interest . ** The sum of each person's wealth is applied to the household . describe hh_intot tm4414 tm4422 storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_intot long %12.0g Interest earning, assets held in other tm4414 long %12.0g SC4414 from the core file tm4422 long %12.0g SC4422 from the core file . ** Some variables have -3 for 'None' . recode tm4414 ( -3 = 0 ), gen(tm4414_a) (7 differences between tm4414 and tm4414_a) . recode tm4422 ( -3 = 0 ), gen(tm4422_a) (13 differences between tm4422 and tm4422_a) . sum hh_intot tm4414_a tm4422_a Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_intot | 50662 3335.068 27246.4 0 949997 tm4414_a | 50662 433.9697 7843.258 0 285000 tm4422_a | 50662 1014.288 13717.41 0 350000 . gen p_oth_int = tm4414_a+tm4422_a . bysort id addid: egen oth_int=sum(p_oth_int) . assert hh_intot == oth_int . sum oth_int Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- oth_int | 50662 3335.068 27246.4 0 949997 . *list id addid *oth_int* hh_intot tm4414 tm4422 if hh_intot != oth_int . ********************************************************************** . ** Stocks . ** The sum of each person's wealth is applied to the household . describe hh_stk tm8034 tm8040 tm8044 tm8050 storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_stk double %10.0g Equity in stocks and mutual fund share tm8034 long %21.0g tm8034l As of(last day of reference period) tm8040 long %20.0g tm8040l As of(last day of reference period) tm8044 long %19.0g tm8044l As of (last day of reference period) tm8050 long %19.0g tm8050l As of (last day of reference period) . ** Some variables have -3 for 'None' . recode tm8034 ( -3 = 0 ), gen(tm8034_a) (609 differences between tm8034 and tm8034_a) . sum hh_stk tm8034 tm8040 tm8044 tm8050 Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_stk | 50662 7866.713 46661.51 -7420 1999998 tm8034 | 50662 1455.297 20289.45 -3 1360000 tm8040 | 50662 4.810529 321.7592 0 47000 tm8044 | 50662 1790.264 20793.57 0 999999 tm8050 | 50662 37.64563 3869.873 0 499999 . gen p_stock = (tm8034_a-tm8040)+(tm8044-tm8050) . bysort id addid: egen stock=sum(p_stock) . assert hh_stk == stock . ** 1993t4 does not ask tm8040, tm8050 about "amount of the debt or margin against account" . gen p_stock_no_debt = (tm8034_a)+(tm8044) . bysort id addid: egen stock_no_debt=sum(p_stock_no_debt) . sum stock stock_no_debt Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- stock | 50662 7866.713 46661.51 -7420 1999998 stock_no_d~t | 50662 7984.766 47969.03 0 1999998 . ********************************************************************** . ** Other real estate - Not home . ** The sum of each person's wealth is applied to the household . ** tm8666: All persons in HH get the reference person's response duplicated to their record . ** tm8122: real estate jointly owned with other than spouse . ** tm8068: joint, non-residence ASKED OF ONLY ONE SPOUSE. RESPONSE IS DIVIDED BY 2, AND THE > DIVIDED AMOUNT IS COPIED TO BOTH SPOUSES RECORDS. . ** tm8092: owned in own name . describe hh_ore tm8666 tm8122 tm8068 tm8074 tm8092 tm8098 storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_ore double %10.0g Real estate (other than own home) equi tm8666 long %14.0g tm8666l What is the total value of... equity i tm8122 long %14.0g tm8122l (as of the last day of reference perio tm8068 long %14.0g tm8068l As of (last day of reference period) tm8074 long %14.0g tm8074l As of(last day of reference period) tm8092 long %14.0g tm8092l As of(last day of reference period) tm8098 long %14.0g tm8098l As of(last day of reference period) . ** Some variables have -3 for 'None' . recode tm8074 ( -3 = 0 ), gen(tm8074_a) (0 differences between tm8074 and tm8074_a) . recode tm8098 ( -3 = 0 ), gen(tm8098_a) (1 differences between tm8098 and tm8098_a) . recode tm8122 ( -3 = 0 ), gen(tm8122_a) (0 differences between tm8122 and tm8122_a) . sum hh_ore tm8666 tm8122 tm8068 tm8074 tm8092 tm8098_a Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_ore | 50662 10586.5 52554.67 0 1080000 tm8666 | 50662 3726.085 21390.02 0 250000 tm8122 | 50662 146.8804 4101.908 0 250000 tm8068 | 50662 1950.599 25932.36 0 750000 tm8074 | 50662 627.5657 10001.66 0 340000 -------------+-------------------------------------------------------- tm8092 | 50662 1411.59 21650.26 0 700000 tm8098_a | 50662 240.4159 5074.972 0 230000 . ** tm8122, tm8092, and tm8068 apply to the whole hh, so hh-wise variables that are cum sums a > re needed . bysort id addid: egen h_trt=sum(tm8122_a) . bysort id addid: egen h_trj=sum(tm8068-tm8074_a) . bysort id addid: egen h_tri=sum(tm8092-tm8098_a) . gen oreal = tm8666+h_trt+h_trj+h_tri . *sort id addid pnum . *list id addid pnum hh_ore *real* tm8666 tm8122 tm8068 tm8074 tm8092 tm8098 if id=="066925123 > 035" , nol . assert hh_ore == oreal . sum oreal Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- oreal | 50662 10586.5 52554.67 0 1080000 . ********************************************************************** . ** Other assets . ** The sum of each person's wealth is applied to the household . describe hh_otast tm8126 tm8128 tm8132 tm8202 tm8206 tm8210 tm8233 storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_otast long %12.0g Other assets tm8126 long %14.0g tm8126l (as of last day of reference period) tm8128 long %14.0g tm8128l As of(last day of reference period) tm8132 long %21.0g tm8132l As of(last day of reference period) tm8202 long %15.0g tm8202l How much was owed to... (if shared, tm8206 long %14.0g tm8206l What was the face value of the U.S. tm8210 long %14.0g tm8210l What is your best estimate of the amou tm8233 long %14.0g tm8233l What is your best estimate of the amou . ** Some variables have -3 for 'None' . recode tm8126 ( -3 = 0 ), gen(tm8126_a) (6 differences between tm8126 and tm8126_a) . recode tm8128 ( -3 = 0 ), gen(tm8128_a) (8 differences between tm8128 and tm8128_a) . recode tm8132 ( -3 = 0 ), gen(tm8132_a) (48 differences between tm8132 and tm8132_a) . recode tm8210 ( -3 = 0 ), gen(tm8210_a) (110 differences between tm8210 and tm8210_a) . recode tm8233 ( -3 = 0 ), gen(tm8233_a) (197 differences between tm8233 and tm8233_a) . sum hh_otast tm8126_a tm8128_a tm8132_a tm8202 tm8206 tm8210_a tm8233_a Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_otast | 50662 3929.707 28741.01 0 982364 tm8126_a | 50662 160.8957 6551.961 0 750000 tm8128_a | 50662 132.1331 4014.943 0 425000 tm8132_a | 50662 685.2393 13942.96 0 974564 tm8202 | 50662 247.4602 6687.872 0 540000 -------------+-------------------------------------------------------- tm8206 | 50662 221.8665 1524.945 0 20000 tm8210_a | 50662 81.2671 431.1446 0 5000 tm8233_a | 50662 85.28884 394.3115 0 4000 . gen p_oth_ass = tm8126_a+tm8128_a+tm8132_a+tm8202+tm8206+tm8210_a+tm8233_a . bysort id addid: egen oth_ass=sum(p_oth_ass) . assert hh_otast == oth_ass . *list id addid pnum hh_otast *ass tm8126 tm8128 tm8132 tm8202 tm8206 tm8210 tm8233 if hh_otas > t!=oth_ass , nol . ** 1993t4 had only four other asset variables, I think . gen p_oth_ass4 = tm8132_a+tm8206+tm8210_a+tm8233_a . bysort id addid: egen oth_ass4=sum(p_oth_ass4) . sum oth_ass oth_ass4 Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- oth_ass | 50662 3929.707 28741.01 0 982364 oth_ass4 | 50662 2673.008 22967.18 0 982364 . ********************************************************************** . ** IRA and KEOGH . ** The sum of each person's wealth is applied to the household . describe hh_ira tm8264 tm8288 storage display value variable name type format label variable label ----------------------------------------------------------------------------------------------- hh_ira long %12.0g IRA and KEOGH accounts tm8264 long %19.0g tm8264l As of (last day of reference period), tm8288 long %14.0g tm8288l As of (last day of reference period) . sum hh_ira tm8264 tm8288 Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- hh_ira | 50662 6994.748 24184.39 0 460500 tm8264 | 50662 2360.586 11010.57 0 120000 tm8288 | 50662 285.2694 6952.812 0 339000 . gen p_ira = tm8264+tm8288 . bysort id addid: egen ira=sum(p_ira) . assert hh_ira == ira . sum ira Variable | Obs Mean Std. Dev. Min Max -------------+-------------------------------------------------------- ira | 50662 6994.748 24184.39 0 460500 . ********************************************************************** . ** 401K and Thrift . ** The questions were not asked pre-1996. . ********************************************************************** . ! grep "^ vehicle |" wealth1993*log . ! grep "^ bank_int |" wealth1993*log . ! grep "^ oth_int |" wealth1993*log . ! grep "^stock_no_d~t |" wealth1993*log . ! grep "^ oreal |" wealth1993*log . ! grep "^ oth_ass4 |" wealth1993*log . ! grep "^ ira |" wealth1993*log . gen fileid = "1993t7" . gen ssuid=id . gen shhadid=addid . gen epppnum=pnum . *sort id addid pnum . sort ssuid addid epppnum . saveold ~/bulk/sipp/sipp93t7, replace file ~/bulk/sipp/sipp93t7.dta saved . exit,clear end of do-file . do wealth1993t4.do . capture log close