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: extract part of matrix e(b)
From
Mirko <[email protected]>
To
[email protected]
Subject
Re: st: extract part of matrix e(b)
Date
Fri, 22 Jul 2011 19:42:33 +0100
Hi Jorge,
Thanks very much for your answer.
What if I need to save matrices because I need to do other tests and
calculations?
Please check the example below:
sysuse auto, clear
set more off
regress mpg foreign i.rep78##c.weight headroom
margins, dydx(rep78)
(output omitted)
. matrix b_num = r(b)
. matrix colna b_num = num:
. matrix J_num = r(Jacobian)
. matrix rowna J_num = num:
. margins, dydx(weight) over(rep78)
(output omitted)
. matrix b_den = r(b)
. matrix colna b_den = den:
. matrix J_den = r(Jacobian)
. matrix rowna J_den = den:
. * combine the results
. matrix b = b_num, b_den
. matrix J = J_num \ J_den
. matrix V = J*e(V)*J'
. ereturn post b V
. * check that the combined results match those from the original
. ereturn display
(output omitted)
. nlcom (R2: [num]_b[2.r]/[den]_b[2.r]) (R3:
[num]_b[3.r]/[den]_b[3.r]) (R4: [num]_b[4.r]/[den]_b[4.r]) (R5
[num]_b[5.r]/[den]_b[5.r])
However, I don't want to use the entire e(b) matrix but just part of
it...Does it work if I save the coefficients as scalars, then I create
a matrix?
Mirko
On 22 July 2011 17:32, Joerg Luedicke <[email protected]> wrote:
> You could grab it from the matrix by addressing row and column
> numbers, for example:
>
> scalar second=b[1,2]
> scalar third=b[1,3]
>
> J.
>
>
> On Fri, Jul 22, 2011 at 12:03 PM, Mirko <[email protected]> wrote:
>> Dear Statalisters,
>>
>> I wish to extract only some coefficients from the matrix e(b) and I
>> wonder how this can be achieved.
>>
>> Here is a simple example.
>>
>> . regress mpg foreign i.rep78##c.weight headroom
>> (output omitted)
>>
>> . margins, dydx(rep78)
>> (output omitted)
>>
>> . mat b =e(b)
>>
>> This command extracts and saves the entire coefficients matrix e(b) as b.
>>
>> If you type:
>>
>> . mat li b
>>
>> you get:
>>
>> b[1,5]
>> 1b. 2. 3. 4. 5.
>> rep78 rep78 rep78 rep78 rep78
>> y1 0 .25956254 -.74363551 -.38630819 -6.5437415
>>
>>
>> What should I do if I wish to grab only the second and third
>> coefficients: .25956254, -.74363551 instead the all matrix?
>>
>> How this can be done?
>>
>> Mirko
>> *
>> * 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/
>
*
* 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/