## Get proc SQL to produce 95% confidence interval

Occasional Contributor
Posts: 8

# Get proc SQL to produce 95% confidence interval

I created SAS code using proc SQL to calculate a weighted mean by year.  My SAS code is below.  My weight variable is called bwght and I weight the variable called CPUE for each year.  This code produces the weighted mean by year and calls it bwghtedAverage.  However, I can't figure out how I an get proc sql to also provide me with the 95% confidence intervals for this mean.  Any help would be greatly appreciated.

proc sql;

title 'Weighted Averages';

select Year, sum(CPUE*bwght)/sum(bwght) as bwghtedAverage

from (select Year, CPUE,

case

when bwght gt 0 then bwght

else 0

end as bwght

from CPUEdat)

group by Year /*major_area_code*/;

quit;

Super User
Posts: 23,754

## Re: Get proc SQL to produce 95% confidence interval

Posted in reply to elopomorph

You'd have to do the manual calculations using the formula. Why not use proc means instead?

Occasional Contributor
Posts: 8

## Re: Get proc SQL to produce 95% confidence interval

I don't know how to do a weighted average in proc means.  Can you provide an example?

Super User
Posts: 23,754

## Re: Get proc SQL to produce 95% confidence interval

Posted in reply to elopomorph

Here's a good example of how and looking at the vardef option as well.

Base SAS(R) 9.2 Procedures Guide

You'll still need to deal with the 0 or negative weights somehow before the proc.

Super User
Posts: 10,784

## Re: Get proc SQL to produce 95% confidence interval

Posted in reply to elopomorph

And don't forget   proc univariate

Discussion stats
• 4 replies
• 1241 views
• 0 likes
• 3 in conversation