Senay Sokullu and Christine Valente, "Individual Consumption in Collective Households: Identification Using Repeated Observations with an Application to PROGRESA", Journal of Applied Econometrics, Vol. 37, No. 2, 2022, pp. 286-304. This file contains information on the data and matlab codes used to obtain the main results in the paper. All files are ASCII files in DOS format. They are zipped in the file sv-files.zip. Unix/Linux users should use "unzip -a". Below we first describe the variables in our dataset and then the Matlab programs. %%%Data%%% We use three waves from PROGRESA: October 1998, May 1999, and November 1999. It is a balanced panel of 2719 households. We have the following variables in the dataset matlab_regs.csv (in the order of appearance in the excel data file): min_childage5: Min child age in the household (hh) in Nov 99 share_girls5: Share of girls within children in the hh in Nov 99 kids_enrolled5: Total number of kids in the hh enrolled in school in Nov 99 agehead5: Age of the hh head in Nov 99 agespouse5: Age of the spouse in Nov 99 treated: Dummy variable equal to 1 if hh received CCT nkids5: Number of kids in the hh in Nov 99 min_childage4: Min child age in the household (hh) in May 99 share_girls4: Share of girls within children in the hh in May 99 kids_enrolled4: Total number of kids in the hh enrolled in school in May 99 agehead4: Age of the hh head in May 99 agespouse4: Age of the spouse in May 99 nkids4: Number of kids in the hh in May 99 min_childage3: Min child age in the household (hh) in Oct 98 share_girls3: Share of girls within children in the hh in Oct 98 wealthindex: pca score of (12) hh durables owned in Oct 98 (truck car fan washing vcr tv musicplayer radio heater stove fridge blender) kids_enrolled3: Total number of kids in the hh enrolled in school in Oct 98 agehead3: Age of the hh head in Oct 98 agespouse3: Age of the spouse in Oct 98 nkids3: Number of kids in the hh in Oct 98 educhead: Education level of the hh head educspouse: Education level of the spouse mean_wageall3: Average labourer's wage in Oct 98 mean_wageall4: Average labourer's wage in May 99 mean_wageall5: Average labourer's wage in Nov 99 drought5: Dummy variable=1 if the village suffered drought in Nov 99 grocers5: Dummy variable =1 if there is a grocers in the village in Nov 99 drought4: Dummy variable=1 if the village suffered drought in May 99 grocers4: Dummy variable =1 if there is a grocers in the village in May 99 drought3: Dummy variable=1 if the village suffered drought in Oct 98 grocers3: Dummy variable =1 if there is a grocers in the village in Oct 98 state1: Dummy variable=1 if the village is in Guerrero state2: Dummy variable=1 if the village is in Hidalgo state3: Dummy variable=1 if the village is in Michoacan state4: Dummy variable=1 if the village is in Puebla state5: Dummy variable=1 if the village is in Queretaro state6: Dummy variable=1 if the village is in San Luis Potosi state7: Dummy variable=1 if the village is in Veracruz ln_mean_wageall3: Log of average labourer's wage in Oct 98 ln_mean_wageall4: Log of average labourer's wage in May 99 ln_mean_wageall5: Log of average labourer's wage in Nov 99 one: vector of ones x3: Total hh expenditure in Oct 98 sm_3: Expenditure on men's shoes and clothes in the hh in Oct 98 sf_3: Expenditure on women's shoes and clothes in the hh in Oct 98 sk_3: Expenditure on children's shoes and clothes in the hh in Oct 98 x4: Total hh expenditure in May 99 sm_4: Expenditure on men's shoes and clothes in the hh in May 99 sf_4: Expenditure on women's shoes and clothes in the hh in May 99 sk_4: Expenditure on children's shoes and clothes in the hh in May 99 x5: Total hh expenditure in Nov 99 sm_5: Expenditure on men's shoes and clothes in the hh in Nov 99 sf_5: Expenditure on women's shoes and clothes in the hh in Nov 99 sk_5: Expenditure on children's shoes and clothes in the hh in Nov 99 tiny: 10^{-7} kid31: Dummy variable =1 if hh have 1 kid in Oct 98 kid32: Dummy variable =1 if hh have 2 kids in Oct 98 kid33: Dummy variable =1 if hh have 3 kids in Oct 98 kid34: Dummy variable =1 if hh have 4 kids in Oct 98 dmagehead3: Demeaned age of the hh head in Oct 98 dmagespouse3: Demeaned age of the hh spouse in Oct 98 dmchildage3: Demeaned min child age in the hh in Oct 98 dmshare_girls3: Demeaned share of girls within the children in the hh in Oct 98 kid41: Dummy variable =1 if hh have 1 kid in May 99 kid42: Dummy variable =1 if hh have 2 kids in May 99 kid43: Dummy variable =1 if hh have 3 kids in May 99 kid44: Dummy variable =1 if hh have 4 kids in May 99 dmagehead4: Demeaned age of the hh head in May 99 dmagespouse4: Demeaned age of the hh spouse in May 99 dmchildage4: Demeaned min child age in the hh in May 99 dmshare_girls4: Demeaned share of girls within the children in the hh in May 99 kid51: Dummy variable =1 if hh have 1 kid in Nov 99 kid52: Dummy variable =1 if hh have 2 kids in Nov 99 kid53: Dummy variable =1 if hh have 3 kids in Nov 99 kid54: Dummy variable =1 if hh have 4 kid in Nov 99 dmagehead5: Demeaned age of the hh head in Nov 99 dmagespouse5: Demeaned age of the hh spouse in Nov 99 dmchildage5: Demeaned min child age in the hh in Nov 99 dmshare_girls5: Demeaned share of girls within the children in the hh in Nov 99 dmeduchead: Demoded education level of the hh head dmeducspouse: Demoded education level of the spouse above_meanexp3: Dummy variable=1 if total hh expenditure is above the mean value in Oct 98 above_meanexp4: Dummy variable=1 if total hh expenditure is above the mean value in May 99 above_meanexp5: Dummy variable=1 if total hh expenditure is above the mean value in Nov 99 sm_sonly_3: Expenditure on men's shoes in the hh in Oct 98 sf_sonly_3: Expenditure on women's shoes in the hh in Oct 98 sk_sonly_3: Expenditure on children's shoes in the hh in Oct 98 sm_sonly_4: Expenditure on men's shoes in the hh in May 99 sf_sonly_4: Expenditure on women's shoes in the hh in May 99 sk_sonly_4: Expenditure on children's shoes in the hh in May 99 sm_sonly_5: Expenditure on men's shoes in the hh in Nov 99 sf_sonly_5: Expenditure on women's shoes in the hh in Nov 99 sk_sonly_5: Expenditure on children's shoes in the hh in Nov 99 sm_conly_3: Expenditure on men's clothes in the hh in Oct 98 sf_conly_3: Expenditure on women's clothes in the hh in Oct 98 sk_conly_3: Expenditure on children's clothes in the hh in Oct 98 sm_conly_4: Expenditure on men's clothes in the hh in May 99 sf_conly_4: Expenditure on women's clothes in the hh in May 99 sk_conly_4: Expenditure on children's clothes in the hh in May 99 sm_conly_5: Expenditure on men's clothes in the hh in Nov 99 sf_conly_5: Expenditure on women's clothes in the hh in Nov 99 sk_conly_5: Expenditure on children's clothes in the hh in Nov 99 wealthcount: number of hh durables owned in Oct 98, out of 12 (truck car fan washing vcr tv musicplayer radio heater stove fridge blender) village3: village identifier in Oct 98 village4: village identifier in May 99 village5: village identifier in Nov 99 dmednkids3: Demeaned number of kids in the hh in Oct 98 dmednkids4: Demeaned number of kids in the hh in May 99 dmednkids5: Demeaned number of kids in the hh in Nov 99 constant: constant equal to 1 higheduchead: Dummy variable=1 if education level of hh head >1 higheducspouse: Dummy variable=1 if education level the spouse >1 low_educhead: Dummy variable=1 if education level of hh head <1 low_educspouse: Dummy variable=1 if education level the spouse <1 folio: hh identifier, range: [66324,697896] indi: Dummy varialbe for indigenous hh head folio2: hh identifier reformatted to have range: [1, 2719] %%%MATLAB PROGRAMMES%%%% SVM40.txt: This is matrix of initial values. In Section 5.2, we explain that, because we estimate a complex nonlinear model, the objective function may exhibit local minima, and results obtained at different local minima may differ. We therefore carried out extensive checks using 600 different set of starting values for the parameters of the model and report the results for which the optimization led to the lowest function value. To speed up the process, we used the supercomputer Blue Crystal at University of Bristol, and ran 60 programs at the same time, each containing matrices like SVM40 with 10 different set of starting values. Thus the dimension of SVM40 is 10x306; there are 10 different starting values for each of the 306 parameters we are estimating. The sixth row of SVM40 is the row vector of starting values which gave the smallest function value for the gmm optimization. progresagmm_finalrobust_feb18.m: This is the main Matlab code which gives the results. nlsurbeta_onecons.m: Function to minimize to get first step nlsur estimates nlsurbeta2_onecons.m: Function to minimize to get second step nlsur estimates derfinal2_onecons.m: Function to calculate variance of nlsur estimates gmmonestep_onecons.m: Function to minimize to get gmm estimates varmomentones_onecons.m: function to compute the variance of moments to use in the computation of variance of the estimated parameters varmomentones_clus_onecons.m: function to compute the variance of moments to use in the computation of variance of the estimated parameters (clustered) vargmmonestep_onecons.m: Function to compute the variance of estimated parameters vargmmonestep_clus_onecons.m: Function to compute the clustered variance of estimated parameters jacobonestep_onecons.m: Function to compute numerical jacobian fittedonestep_onecons.m: Function to compute fitted values from nlsur estimate to use in calculation of optimal instruments