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

st: RE: AW: modl and modltbl after svy: regress

From   "Nick Cox" <[email protected]>
To   <[email protected]>
Subject   st: RE: AW: modl and modltbl after svy: regress
Date   Wed, 27 Jan 2010 14:01:36 -0000

That's my reading too. But how did Martin find this out? 

The message for others is to look at the code to see where the message
is being issued. To do this you do _not_ need to be a Stata programmer
yourself (although any and all experience can help you find a solution

Another message is that it does help people to understand your question
if you specify where user-written software you are referring to comes
from. This practice should be standard, as the FAQ requests it, but
recently it has become rare. Not only does it help people who answer
posts work out what the problem is, it also increases your chance of
getting a reply at all. 

[email protected] 

Martin Weiss

BTW, the technical reason for the refusal to provide output seems to be
-regress- does leave behind the -global- "S_E_cmd" while with the -svy-
option it does not. -modl- depends on this value being there...

webuse highschool, clear
generate male = sex == 1 if !missing(sex)
regress weight height
di "$S_E_cmd"
svy, subpop(male): regress weight height
di "$S_E_cmd"

Helen Connolly

I would like to use the modl and modltbl commands after svy: regress.  I

do the following:

svy, subpop($subpop): regress $wage
modl 1

The response is:
. modl 1
Last estimates not found.
modl must immediately follow an estimation procedure.

However, if I look at last estimates, I get:

. ereturn list

                 e(r2) =  0
             e(stages) =  1
              e(N_sub) =  377278
           e(N_subpop) =  4.579482189141677
                  e(N) =  683840
              e(N_pop) =  7.878162752876319
           e(N_strata) =  28
              e(N_psu) =  402352
               e(df_r) =  402324
      e(N_strata_omit) =  0
          e(singleton) =  0
             e(census) =  0
               e(k_eq) =  1
               e(df_m) =  0
               e(rank) =  1

                e(cmd) : "regress"
            e(cmdline) : "svy , subpop(employee): regress lnnetmwdp"
             e(prefix) : "svy"
            e(cmdname) : "regress"
            e(command) : "regress lnnetmwdp"
          e(estat_cmd) : "svy_estat"
                e(vce) : "linearized"
            e(vcetype) : "Linearized"
              e(title) : "Survey: Linear regression"
             e(subpop) : "employee"
               e(wexp) : "= nw1"
              e(wtype) : "pweight"
               e(wvar) : "nw1"
         e(singleunit) : "missing"
                e(su1) : "casenum"
            e(strata1) : "cid"
         e(properties) : "b V"
          e(marginsok) : "XB default"
             e(depvar) : "lnnetmwdp"
            e(predict) : "regres_p"
              e(model) : "ols"

                  e(b) :  1 x 1
                  e(V) :  1 x 1
       e(V_modelbased) :  1 x 1
           e(V_srssub) :  1 x 1
              e(V_srs) :  1 x 1
  e(_N_strata_certain) :  1 x 1
   e(_N_strata_single) :  1 x 1
          e(_N_strata) :  1 x 1


. mat list e(b)

symmetric e(b)[1,1]
y1  .839104

So the last estimates do exist.

When I rerun the same command using just regress (regress $wage [w=nw1] 
if $subpop), the "modl 1" command works.

Can anyone tell me why modl is not recognizing the last estimates for 
svy: regress and/or how to fix this?

*   For searches and help try:

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