/***************************************************************************************************************** SAS file name: Poisson_Curves.sas File location: _________________________________________________________________________________________________________________ Purpose: To draw densities and cummulative density curves for three different poisson distributions Author: Peter Clemmensen Creation Date: 12/06/2017 This Program supports the Example page "Poisson Distribution" on SASnrd.com *****************************************************************************************************************/ /* Probability Mass Function Data */ data Poisson_PMF; do lambda=1, 3, 5; do k=0 to 10; pdf=pdf('Poisson', k, lambda); output; end; end; run; /* Draw PMF Curves */ title "Poisson Probability Mass Function"; title2 "For Different Values of (*ESC*){unicode lambda}"; proc sgplot data=Poisson_PMF noautolegend; series x=k y=pdf / markers group=lambda lineattrs=(thickness=2) markerattrs=(size=10 symbol=circlefilled); xaxis values=(0 to 10) label='k' labelattrs=(size=12 weight=Bold); yaxis values=(0 to 0.4 by 0.1) display=(nolabel); keylegend / title="(*ESC*){unicode lambda} =" titleattrs=(Size=12 Weight=Bold) position=NE location=inside across=1 noborder valueattrs=(Size=12 Weight=Bold); run; title; /* Cummulative Density Function Data */ data Poisson_CMF; do lambda=1, 3, 5; do k=0 to 10; cmf=cdf('Poisson', k, lambda); output; end; end; run; proc expand data=Poisson_CMF out=Poisson_CMF; by lambda; id k; convert k=k_r / transformout=(lead 1); run; /* Draw CMF Curves */ title "Poisson Cummulative Mass Function"; title2 "For Different Values of (*ESC*){unicode lambda}"; proc sgplot data=Poisson_CMF noautolegend; vector x=k_r y=cmf / group=lambda xorigin=k yorigin=cmf noarrowheads name='CMF' lineattrs=(thickness=2); scatter x=k y=cmf / group=lambda markerattrs=(size=10 symbol=CircleFilled); scatter x=k_r y=cmf / group=lambda filledoutlinedmarkers markerfillattrs=(color=white) markerattrs=(size=10 symbol=CircleFilled); keylegend 'CMF' / title="(*ESC*){unicode lambda} =" titleattrs=(Size=12 Weight=Bold) position=NW location=inside across=1 noborder valueattrs=(Size=12 Weight=Bold); xaxis values=(0 to 10) label='k' labelattrs=(size=12 weight=Bold); yaxis display=(nolabel); run; title;