Notice: On March 31, it was **announced** that Statalist is moving from an email list to a **forum**. The old list will shut down at the end of May, and its replacement, **statalist.org** is already up and running.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

From |
Murat Genc <murat.genc@otago.ac.nz> |

To |
"'statalist@hsphsun2.harvard.edu'" <statalist@hsphsun2.harvard.edu> |

Subject |
RE: st: nlsur function evaluator program QUAIDS with demographics |

Date |
Sat, 9 Mar 2013 01:49:38 +0000 |

Hi all, Just a couple comments to add. Yen, S.T., Kan, K., & Su, S-J. (2002) "Household demand for fats and oils: Two-step estimation of a censored demand." Applied Economics, 34(14), 1799-1806 argue that unlike the conventional case of additive disturbances without censoring, the deterministic component of the right-hand side of the system do not add up to unity across all equations of the system. Therefore, they say that the second step of the estimation should be based on the entire set of equations without dropping one arbitrary equation. The same paper also points out that the conventional covariance matrix of the second-step estimator is incorrect and needs to be corrected. I wonder if there is anyone who has estimated a demand system in Stata catering for these issues and willing to share the code for that. (Whether it is AIDS, QUAIDS, translog, etc.) Regards Murat Dr M Genç Department of Economics Research Fellow University of Otago and Institute for the Study of Labor (IZA) P O Box 56 Bonn, Germany Dunedin 9054, New Zealand _______________________________________________ E-Mail: murat.genc@otago.ac.nz Phone: +64 3 479 8644 Fax: +64 3 479 8174 Web: <www.otago.ac.nz/economics> -----Original Message----- From: owner-statalist@hsphsun2.harvard.edu [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of ogundarikolawole Sent: Saturday, 9 March 2013 1:39 p.m. To: statalist@hsphsun2.harvard.edu Subject: RE: st: nlsur function evaluator program QUAIDS with demographics Hi all, I think people keep on confusing the usefulness of Poi's new command called "quaids" to reality of the economic data often used for empirical analysis of demand system. Those that understood the role of data generating process (DGP) governing any economic data before using any software are the one talking about the shortcoming of the Poi's new user free command in STATA just mentioned, especially when data is censored. The Poi's quaids in STATA cannot handle censored data but it is useful for an idea data with no problem of any censoring. So, if you are a researcher estimating demand system and your data is censored, then estimating demand elasticities using Poi's new user free command in STATA (quaids) will produce a biased results. The best approach is to figure out with a little programming experince on how to take into account the censoring problem in the data by modify the nlsur function evaluator program QUAIDS also provided by Poi some years back. The most frequent approach is by Shonkwiler, J.S., and S.T. Yen. 1999. "Two-Step Estimation of A Censored System of Equations." American Journal of Agricultural Economics 81: 972-982. However, a number of contributors on this STATA list has used this approach. Below is the a typical nlsur function evaluator program QUAIDS with demographics, which also take into account censoring problem in economic data posted by one of the STATA contributors some months ago. program nlsurquaidsNNP version 12.1 syntax varlist(min=16 max=16) if, at(name) tokenize `varlist' args w1 w2 w3 lnp1 lnp2 lnp3 lnp4 lnm x1 x2 pdf1 pdf2 pdf3 cdf1 cdf2 cdf3 // With four goods, there are 15 parameters that can be // estimated, after eliminating one of the goods and // imposing adding up, symmetry, and homogeneity // constraints, in the QUAIDS model // Here, we extract those parameters from the `at' // vector, and impose constraints as we go along tempname a1 a2 a3 a4 scalar `a1' = `at'[1,1] scalar `a2' = `at'[1,2] scalar `a3' = `at'[1,3] scalar `a4' = 1 - `a1' - `a2' - `a3' tempname b1 b2 b3 b4 scalar `b1' = `at'[1,4] scalar `b2' = `at'[1,5] scalar `b3' = `at'[1,6] scalar `b4' = -`b1' - `b2' - `b3' tempname g11 g12 g13 g14 tempname g21 g22 g23 g24 tempname g31 g32 g33 g34 tempname g41 g42 g43 g44 scalar `g11' = `at'[1,7] scalar `g12' = `at'[1,8] scalar `g13' = `at'[1,9] scalar `g14' = -`g11' - `g12' - `g13' scalar `g21' = `g12' scalar `g22' = `at'[1,10] scalar `g23' = `at'[1,11] scalar `g24' = -`g21' - `g22' - `g23' scalar `g31' = `g13' scalar `g32' = `g23' scalar `g33' = `at'[1,12] scalar `g34' = -`g31' - `g32' - `g33' scalar `g41' = `g14' scalar `g42' = `g24' scalar `g43' = `g34' scalar `g44' = -`g41' - `g42' - `g43' tempname l1 l2 l3 l4 scalar `l1' = `at'[1,13] scalar `l2' = `at'[1,14] scalar `l3' = `at'[1,15] scalar `l4' = -`l1' - `l2' - `l3' // constant and household demographics tempname r11 r12 tempname r21 r22 tempname r31 r32 scalar `r11' = `at'[1,16] scalar `r12' = `at'[1,17] scalar `r21' = `at'[1,18] scalar `r22' = `at'[1,19] scalar `r31' = `at'[1,20] scalar `r32' = `at'[1,21] // pdf tempname d1 d2 d3 scalar `d1' = `at'[1,22] scalar `d2' = `at'[1,23] scalar `d3' = `at'[1,24] // Okay, now that we have all the parameters, we can // calculate the expenditure shares. quietly { // First get the price index // I set a_0 = 5 tempvar lnpindex gen double `lnpindex' = 5 + `a1'*`lnp1' + `a2'*`lnp2' /// + `a3'*`lnp3' + `a4'*`lnp4' forvalues i = 1/4 { forvalues j = 1/4 { replace `lnpindex' = `lnpindex' + /// 0.5*`g`i'`j''*`lnp`i''*`lnp`j'' } } // The b(p) term in the QUAIDS model: tempvar bofp gen double `bofp' = 0 forvalues i = 1/4 { replace `bofp' = `bofp' + `lnp`i''*`b`i'' } replace `bofp' = exp(`bofp') // Finally, the expenditure shares for 3 of the 4 // goods (the fourth is dropped to avoid singularity) replace `w1' = (`a1' + `g11'*`lnp1' + `g12'*`lnp2' + /// `g13'*`lnp3' + `g14'*`lnp4' + /// `b1'*(`lnm' - `lnpindex') + /// `l1'/`bofp'*(`lnm' - `lnpindex')^2 + /// `r11'*`x1' +`r12'*`x2')*`cdf1'+ /// `d1'*`pdf1' replace `w2' = (`a2' + `g21'*`lnp1' + `g22'*`lnp2' + /// `g23'*`lnp3' + `g24'*`lnp4' + /// `b2'*(`lnm' - `lnpindex') + /// `l2'/`bofp'*(`lnm' - `lnpindex')^2 + /// `r21'*`x1' +`r22'*`x2')*`cdf2' + /// `d2'*`pdf2' replace `w3' = (`a3' + `g31'*`lnp1' + `g32'*`lnp2' + /// `g33'*`lnp3' + `g34'*`lnp4' + /// `b3'*(`lnm' - `lnpindex') + /// `l3'/`bofp'*(`lnm' - `lnpindex')^2 + /// `r31'*`x1' +`r32'*`x2')*`cdf3' + /// `d3'*`pdf3' } end

**References**:**Re: st: nlsur function evaluator program QUAIDS with demographics***From:*Jorge Eduardo Pérez Pérez <perez.jorge@ur.edu.co>

**Re: st: nlsur function evaluator program QUAIDS with demographics***From:*Roberta Distante <r_distante@yahoo.it>

**Re: st: nlsur function evaluator program QUAIDS with demographics***From:*olorunfemi sola <solafem7@yahoo.co.uk>

**RE: st: nlsur function evaluator program QUAIDS with demographics***From:*ogundarikolawole <ogundarikolawole@daad-alumni.de>

- Prev by Date:
**Re: st: Using mkmat with a local as the varlist** - Next by Date:
**st: summarizing data across rows (e.g as in time use files)** - Previous by thread:
**RE: st: nlsur function evaluator program QUAIDS with demographics** - Next by thread:
**st: esttab with value labels** - Index(es):