[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

From |
"Scott Merryman" <[email protected]> |

To |
<[email protected]> |

Subject |
RE: st: RE: Changing beta coefficients - w/ logistic regression |

Date |
Fri, 22 Jul 2005 05:53:00 -0500 |

> -----Original Message----- > From: [email protected] [mailto:owner- > [email protected]] On Behalf Of Richard Williams > Sent: Thursday, July 21, 2005 7:19 PM > To: [email protected] > Subject: Re: st: RE: Changing beta coefficients - w/ logistic regression > > At 05:33 PM 7/21/2005 -0500, Scott Merryman wrote: > >Change the program to: > > > >program foo2, eclass > > tempname bmat > > matrix `bmat' = e(b) > > matrix b = e(b) > > ereturn post b > > matrix `bmat'[1,1] = 122 > > ereturn repost b = `bmat' > >end > > > >This seems to work for both -regress- and -logit- > > > >Scott > > I'm surprised the original program doesn't work. Something to be aware of > with Scott's solution: most of the ereturned stuff gets zapped once you > run foo2. In particular, since e(predict) gets zapped, the p option on > predict doesn't work. You can probably add lines to Scott's program to > revive the ereturned stuff that gets lost but maybe there is a better > way. Richard, Thanks. Nice catch. I too hope there is a better way. It is not hard to pick up the ereturned stuff: program foo2, eclass local depvar = e(depvar) local predict = e(predict) local estat_cmd = e(estat_cmd) local cmd = e(cmd) tempname bmat matrix `bmat' = e(b) matrix b = e(b) ereturn post b matrix `bmat'[1,1] = _b[mpg] ereturn local predict = "`predict'" ereturn local depvar = "`depvar'" ereturn local estat_cmd = "`estat_cmd'" ereturn local cmd = "`cmd'" ereturn repost b = `bmat' end Now -predict prob, p- works, in the sense it doesn't return an error, though it does not calculate the probability but rather the fitted values. The probabilities can calculated by using the -invlogit- function, however I am not sure why -predict prob, p - is not calculating the probabilities. . qui logit fore mpg . predict prob1, p . foo2 . ereturn list macros: e(cmd) : "logit" e(estat_cmd) : "logit_estat" e(depvar) : "foreign" e(predict) : "logit_p" e(properties) : "b" matrices: e(b) : 1 x 2 . predict prob2 , p . l prob* in 1/2 +---------------------+ | prob1 prob2 | |---------------------| 1. | .2964837 -.864099 | 2. | .1593718 -1.66291 | +---------------------+ . replace prob2 = invlogit(prob2) (74 real changes made) . l prob* in 1/2 +---------------------+ | prob1 prob2 | |---------------------| 1. | .2964837 .2964837 | 2. | .1593718 .1593718 | +---------------------+ Scott * * For searches and help try: * http://www.stata.com/support/faqs/res/findit.html * http://www.stata.com/support/statalist/faq * http://www.ats.ucla.edu/stat/stata/

**Follow-Ups**:**st: Adopath***From:*Fred Wolfe <[email protected]>

**RE: st: RE: Changing beta coefficients - w/ logistic regression***From:*Richard Williams <[email protected]>

**References**:**Re: st: RE: Changing beta coefficients - w/ logistic regression***From:*Richard Williams <[email protected]>

- Prev by Date:
**st: New mata package on SSC: -mf_realofstr-** - Next by Date:
**st: Using Cluster stop with Clustermat** - Previous by thread:
**Re: st: RE: Changing beta coefficients - w/ logistic regression** - Next by thread:
**RE: st: RE: Changing beta coefficients - w/ logistic regression** - Index(es):

© Copyright 1996–2024 StataCorp LLC | Terms of use | Privacy | Contact us | What's new | Site index |