Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: st: SUREG for Almost Ideal Demand System
From
Michael Musyoka <[email protected]>
To
[email protected]
Subject
Re: st: SUREG for Almost Ideal Demand System
Date
Sun, 3 Jul 2011 03:48:13 -0700 (PDT)
Thanks Poi I understand, its the long way and I got to do it. Thanks alot
----- Original Message ----
From: Brian P. Poi <[email protected]>
To: [email protected]
Sent: Sun, July 3, 2011 12:55:25 AM
Subject: Re: st: SUREG for Almost Ideal Demand System
On 07/01/2011 08:37 PM, Michael Musyoka wrote:
> Thanks a lot Poi for the assistance. Indeed I have managed it directly with
the
> coefficients from Sureg. But once I extract the coefficients into a matrix, I
>am
>
> not getting the se and variance covariance matrix. Is there a way to combine
> nlcom with matrix of coefficients? this will make it possible to do the own
and
> cross elasticities by stating i=j or i>j and vice versa at once....
> For example...say Matrix E...Expenditure coefficient in Sureg....then
>
> matrix list E
> matrix c=J(13,1,1)
> matrix Expel=J(13,1,0)
> matrix n=J(13,1,0)
> forval i=1/13 {
> forval j=1/1 {
> mat Expel[`i',`j']=c[`i',`j']+(scd[`i',`j']*E[`i',`j'])/sw[`i',`j']
> nlcom (shares:c[`i',`j']+(0.33450538*E[`i',`j'])/.14810108)
> }
> }
I may have been unclear when I stated that -nlcom- could estimate multiple
functions at once. What I meant by that was that if you want to obtain the
variance-covariance matrix of multiple estimates, you specify all of the
functions in the same call to -nlcom-. No looping is required.
For example, say you've just replicated example 4 from the Reference manual
entry for -nlsur-, so that the active estimation results in Stata contain a
4-equation demand system. Now, let's obtain the vector of income elasticities
and the corresponding covariance matrix. For the basic AIDS model, the income
elasticity for the i'th good is eta_i = 1 + beta_i / w_i. To implement this
formula, we need to pick the set of expenditure shares at which we want the
elasticities. For simplicity, we will use the means. In Stata,
// Get the means of the w's
summ w1, meanonly
scalar w1_mean = r(mean)
summ w2, meanonly
scalar w2_mean = r(mean)
summ w3, meanonly
scalar w3_mean = r(mean)
summ w4, meanonly
scalar w4_mean = r(mean)
nlcom (1 + _b[/b1]/w1_mean) ///
(1 + _b[/b2]/w2_mean) ///
(1 + _b[/b3]/w3_mean) ///
(1 + (-_b[/b1] - _b[/b2] - _b[/b3])/w4_mean)
mat eta = r(b)
mat etaV = r(V)
// Let's verify Engel aggregation to check our results
mat ws = (w1_mean, w2_mean, w3_mean, w4_mean)
mat result = eta*ws'
mat list result
// Here is the complete covariance matrix:
mat list etaV
Instead of thinking in terms of a matrix of price elasticities, think in terms
of a vector where we stack the columns one on top of another. If the price
elasticity matrix is 4x4, then think in terms of a 16x1 vector of functions;
otherwise, conceptualizing what the covariance matrix of what is already a
matrix gets tricky. In this case your call to -nlcom- would include a total of
16 functions, one for each elasticity of good i with respect to price j.
I hope this helps.
-- Brian Poi
-- [email protected]
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/