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]

From |
Joseph Coveney <stajc2@gmail.com> |

To |
statalist@hsphsun2.harvard.edu |

Subject |
Re: st: bootstrap weighted mean |

Date |
Wed, 2 Oct 2013 16:32:14 +0900 |

Shuaizhang Feng wrote: I was trying to bootstrap standard errors for the mean of two variables. When I do so for simple means, i use the following ado file. program myratio, rclass summarize `1' local a1 = r(mean) summarize `2' local a2 = r(mean) return scalar ratio = `a1'/`a2' end and then do the following: .bootstrap r(ratio), reps(100) saving(cratio, replace): myratio u1 u2, detail and this gives the results as expected. however, when i wanted to do ratio of weighted means, i modified the ado file as follows: program myratio_w, rclass summarize `1'[iw=`3'] local a1 = r(mean) summarize `2'[iw=`3'] local a2 = r(mean) return scalar ratio = `a1'/`a2' end and then use: bootstrap r(ratio), reps(100) saving(cratio, replace): myratio_w u1 u2 weight, detail then stata does not work properly and gives me the following message: invalid syntax an error occurred when bootstrap executed myratio_w r(198); I am wondering if anyone from the list can help me out. the difference between the two ado files seem small Thanks in advance. -------------------------------------------------------------------------------- The return code is pretty nonspecific. You can try a couple of things. First, turn on tracing: -set trace on-. Then, try running the called command (-myratio_w-) by itself to see where the code balks. The message from -bootstrap- implies that the called program is the problem, but if you don't see any problem running it alone, then leave tracing on and run the -bootstrap- command in its entirety. By the way, what's with the -detail- option? I don't see that option defined for either your nonweighted command -myratio- or for the weighted command -myratio_w-. Neither should have worked . . . As an alternative, you can always have importance weights as an option using Stata's syntax (-help syntax-) and that way have a single more general command. You'll need to use the -force- option for -bootstrap- to use importance weights in the called command, but that's your responsibility, anyway. Joseph Coveney . version 13.0 . . clear * . set more off . . program define myratio, rclass 1. version 13.0 2. syntax varlist(min=2 max=2 numeric) [iweight] 3. . local weight = cond("`weight'" == "", "", "[`weight'`exp']") 4. . gettoken left right : varlist 5. . summarize `left' `weight', meanonly 6. tempname top 7. scalar define `top' = r(mean) 8. . summarize `right' `weight', meanonly 9. return scalar ratio = `top' / r(mean) 10. end . . set seed `=date("2013-10-02", "YMD")' . sysuse auto, clear (1978 Automobile Data) . . bootstrap ratio = r(ratio), reps(100) nodots nowarn: myratio weight length Bootstrap results Number of obs = 74 Replications = 100 command: myratio weight length ratio: r(ratio) ------------------------------------------------------------------------------ | Observed Bootstrap Normal-based | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- ratio | 16.06673 .275616 58.29 0.000 15.52653 16.60693 ------------------------------------------------------------------------------ . . generate double iweight = runiform() . bootstrap ratio = r(ratio), reps(100) nodots nowarn force: /// > myratio weight length [iw=iweight] Bootstrap results Number of obs = 36 Replications = 100 command: myratio weight length [iweight= iweight] ratio: r(ratio) ------------------------------------------------------------------------------ | Observed Bootstrap Normal-based | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- ratio | 15.81428 .3546588 44.59 0.000 15.11916 16.50939 ------------------------------------------------------------------------------ . . exit end of do-file * * For searches and help try: * http://www.stata.com/help.cgi?search * http://www.stata.com/support/faqs/resources/statalist-faq/ * http://www.ats.ucla.edu/stat/stata/

**References**:**st: bootstrap weighted mean***From:*Shuaizhang Feng <shuaizhang.feng@gmail.com>

- Prev by Date:
**st: Marginal effects after xtprobit** - Next by Date:
**Re: st: Capture break in mata** - Previous by thread:
**st: bootstrap weighted mean** - Next by thread:
**Re: st: bootstrap weighted mean** - Index(es):