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: RE: Re: Generating the sum of a variable
From
W R Goe <[email protected]>
To
[email protected]
Subject
Re: st: RE: Re: Generating the sum of a variable
Date
Wed, 23 Feb 2011 16:12:09 -0500 (EST)
Nick & Brendan,
Thank you. -- Richard
Professor of Sociology
Dept. of Sociology, Anthropology & Social Work
204 Waters Hall
Kansas State University
Manhattan, KS 66506
Telephone:(785) 532-4973
Fax: (785) 532-6970
----- Original Message -----
From: "Nick Cox" <[email protected]>
To: "[email protected]" <[email protected]>
Sent: Wednesday, February 23, 2011 2:06:58 PM
Subject: st: RE: Re: Generating the sum of a variable
The sum is returned by -summarize- (just not displayed). You can access it as r(sum).
. sysuse auto, clear
(1978 Automobile Data)
. su mpg, meanonly
. di r(sum)
1576
. su mpg
Variable | Obs Mean Std. Dev. Min Max
-------------+--------------------------------------------------------
mpg | 74 21.2973 5.785503 12 41
. ret li
scalars:
r(N) = 74
r(sum_w) = 74
r(mean) = 21.2972972972973
r(Var) = 33.47204738985561
r(sd) = 5.785503209735141
r(min) = 12
r(max) = 41
r(sum) = 1576
There is a small efficiency gain in using -su, meanonly- if you only care about the sum.
See also
J-7-3 st0135 . . . . . . . . . . . Stata tip 50: Efficient use of summarize
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . N. J. Cox
Q3/07 SJ 7(3):438--439 (no commands)
tip on using the meanonly option of summarize to more
quickly determine the mean and other statistics of a
large dataset
If you wanted the sum to be shown always, I think you'd need to write a small program to that effect. Someone may well have done this already. This is just to show the spirit, and can naturally be extended.
program mystat
version 8
syntax varname(numeric) [if] [in]
marksample touse
qui count if `touse'
if r(N) == 0 error 2000
su `varlist' if `touse', meanonly
local format : format `varlist'
di
di "Mean " `format' r(mean)
di "Min " `format' r(min)
di "Max " `format' r(max)
di "Sum " `format' r(sum)
end
. mystat mpg
Mean 21.2973
Min 12
Max 41
Sum 1576
. mystat mpg if foreign
Mean 24.7727
Min 14
Max 41
Sum 545
Nick
[email protected]
W R Goe
How can I easily generate the sum of a variable? I know this can be done with the sum function, but can you get the sum as part of the output of a Stata program that generates univariate statistics (e.g. Summarize).
*
* 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/