LISTSERV at the University of Georgia
Menubar Imagemap
Home Browse Manage Request Manuals Register
Previous messageNext messagePrevious in topicNext in topicPrevious by same authorNext by same authorPrevious page (February 2001, week 3)Back to main SAS-L pageJoin or leave SAS-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:   Wed, 21 Feb 2001 09:11:05 -0800
Reply-To:   "William W. Viergever" <wwvierg@IBM.NET>
Sender:   "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From:   "William W. Viergever" <wwvierg@IBM.NET>
Subject:   Re: calculating percents
Comments:   To: Abelson_R <Abelson_R@BLS.GOV>
In-Reply-To:   <7864A9839E95D4119A8F00508BAED813487174@dcpcsmail1.psb.bls. gov>
Content-Type:   text/plain; charset="us-ascii"; format=flowed

Robert:

Er, em .... me thinks your TOTPOP is not what you think it is; i.e., it simply is the total number of folks who had a claim - not necessarily the total pop. The PMPM numerator is cool, however.

FWIW, I've seen populations where the proportion of those who received service varies from the 20%'s (young "N healthy) to the 60%'s/70%'s (retired folks, or chronically ill pops).

BTW, *if* you had already brought TOTALPOP into Data One (as a scalar on every OBS) then you could do what you've written, except that you'd want to do MEAN=TOTPOP and not N= in the Proc Summary.

HTH

At 11:58 AM 2/21/2001 -0500, Abelson_R wrote: >Eileen, > >You don't need a macro variable to get a denominator. There are many ways >to do this, here's one (tested with your data): > >proc summary data=one; > class ptid; > var cost; > output out=pats n=totpop sum=costsum; >run; > >proc sql; > create table newpats as > select ptid, costsum, totpop, (costsum/12)/totpop as pmpm > from pats > where ptid is not null > group by ptid; >quit; > >proc print data=newpats; > var ptid costsum totpop pmpm; >run; > >I get: > OBS PTID COSTSUM TOTPOP >PMPM > > 1 1 154.46 3 >4.29056 > 2 2 120.40 2 >5.01667 > 3 3 151.28 3 >4.20222 > >HTH. > >Robert Abelson >Bureau of Labor Statistics >abelson_r@bls.gov >"The generation of random numbers is too important to be left to chance." >-- Robert R. Coveyou, Oak Ridge National Laboratories > > >-----Original Message----- >From: Eileen Farrelly [mailto:Eileen_Farrelly@PCIT.COM] >Sent: Wednesday, February 21, 2001 10:54 AM >To: SAS-L@LISTSERV.UGA.EDU >Subject: calculating percents > > >I would like to fully automate the following: > >I am calculating the percentage of patients for whom I have data on over >the total population of the plan and I am calculating the per Member per >Month cost (PMPM) (for a particular class of drugs). > >Among other variables I have the following: > >ptid date drug cost >1 01/01/99 A 63.50 >1 02/01/99 A 63.50 >1 03/01/99 B 27.46 >2 02/03/99 C 45.20 >2 06/05/99 D 75.20 >3 08/02/99 A 57.64 >3 09/01/99 A 58.64 >3 10/11/99 B 35.00 > >Although it is not in the data, I know the plan's total population to be >(example) =50. > >I can get the number of unique patients using the following: > >data unique; > set one; > by ptid; > if first.ptid; >run; > >But then I have to calculate the percentage of unique patients over the >total plan membership with my calculator - is there a way (using a macro?) >that I can get the number of unique patients and divide it by the total >plan population? > >I have the same issue with calculating the PMPM. >The formula is : > PMPM=((SUM cost)/12) > / plan's total population > >I can get the SUM of the costs using proc means but then I have to use the >calculator to divide that by 12 and then divide by the total plan >population. > >I am trying to automate things so that SAS will directly output the >computed values for me. > >Thanks in advance!! > >Eileen

---------------------------------------------------------------------------- William W. Viergever Voice : (916) 483-8398 Viergever & Associates Fax : (916) 486-1488 Sacramento, CA 95835 E-mail : wwvierg@ibm.net ----------------------------------------------------------------------------


Back to: Top of message | Previous page | Main SAS-L page