Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at

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

Re: st: pweight + aweight, double weights

From   Steve Samuels <>
Subject   Re: st: pweight + aweight, double weights
Date   Wed, 4 Aug 2010 13:37:01 -0400

If you do a probability weighted mean of the  individual growth rates
for a time period (single year, first year to last year) and weight by
w =  (initial value) x (probability weight), you would wind up with
the rate based on the probability-weighted aggregated sums. So Stas's
solution is exactly the solution you seek. Moreover,  Stas's version
will provide the correct standard error, one appropriate for a ratio

You could also calculate the ratio estimate directly and get
asymmetric CI's, which are likely to be more accurate than the
symmetric intervals

**************************CODE BEGINS**************************
capture program drop _all
program antilog
local lparm  el(r(b),1,1)
local se    sqrt(el(r(V),1,1))
local bound  invttail(e(df_r),.025)*`se'
local parm  exp(`lparm')

local ll  exp(`lparm'  - `bound')
local ul  exp( `lparm' + `bound')
di  "relc = "  100*( `parm'-1)  "    ll = "  100*(`ll'-1)  "   ul = "

sysuse auto, clear
gen length_2 = displacement
rename length length_1
svyset _n
svy: ratio length_2/length_1
nlcom log(_b[_ratio_1])

***************************CODE ENDS***************************

Steven Samuels
18 Cantine's Island
Saugerties NY 12477
Voice: 845-246-0774
Fax:    206-202-4783

On Wed, Aug 4, 2010 at 11:43 AM, Stas Kolenikov <> wrote:
> Who knows. You might be able to get identical answers, but you'll
> spend more time trying to figure out the appropriate composition of
> weights trying to reproduce the answer from those -total- commands.
> On Wed, Aug 4, 2010 at 2:58 AM, Jochen Späth <> wrote:
>> Hello Stas,
>> thank you very much for your advice. I'm aware of the possibility of calculating the aggregate sums of investment for different subpopoluations using the pweight and calculating the aggregate (=aweighted) growth rates from the newly-generated data. I was just wondering whether there were a more "flexible" approach, such as, say multiplicating the two weight variables and use the result in a single -tabstat- or something like that.
> -

On Tue, Aug 3, 2010 at 12:30 PM, Stas Kolenikov <> wrote:
> You would probably want to
> svyset PSU [pw=your weight], strata(strata)
> svy : total investment, over( year sector )
> nlcom ([investment]_subpop_2 - [investment]_subpop_1)/[investment]_subpop_1
> or whatever labels the -total- command is going to give to individual
> coefficients.
> On Tue, Aug 3, 2010 at 8:29 AM, Jochen Späth <> wrote:
>> Dear Statalisters,
>> I have a question about weights, especially about "double weights".
>> I have micro-data on firms containing information about their investment behaviour (amounts) for several years. I then went on to calculate the firms' individual (discrete) growth rates of investment, i.e.
>> rate_t = (inv_t - inv_t-1) / inv_t-1
>> and wish to use these individual growth rates to calculate average growth rates for, say, economic sectors. Thereby, I'd like to attach an aweight to the -tabstat-, -table- or other suitable command, such that firms with higher investments in t-1 contribute a higher share to the average growth rate. This is, of course, straightforward in Stata.
>> However, since I have sampled data I need to attach to this operation also a pweight to get information for the population instead of the sample.
>> Can I calculate the average growth rates from the individual ones or do I need to -collapse- or -table, replace- my data? It seems that -svyset- could be what I am looking for, but it seems rather complicated. Is there a way to avoid the -svyset- command and to go on with simple -tabstat- or alike instead?
>> Best,
>> Jochen

*   For searches and help try:

© Copyright 1996–2017 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index