Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Proc report

1,257 views

Published on

SAS, Proc Report and tagsets in a nutshell. Everything you need to get started using Proc Report.

  • how can i download this slide....plz share with my mai id sandeepitha123@gmail.com
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Proc report

  1. 1. Proc Report, theright tool for jobEric Gebhart
  2. 2. Summary ReportsStatisticsDetail ReportsCompute Blocks
  3. 3. PROC REPORT data= SAS-data-setoptions NOWD; COLUMNS variable_1 .... variable_n; DEFINE variable_1; ... DEFINE variable_n; COMPUTE blocks BREAK ... ; RBREAK ... ;RUN;
  4. 4. Starting Simple Columns Define
  5. 5. Proc Report data=sashelp.class nowd; columns name sex age height weight; define name / display ‘Name’ width=10; define sex / display ‘Gender’ width=6; define age / display ‘Age’ width=4; define height / analysis ‘Height’ format=8.1; define weight / analysis ‘Weight’ format=8.1;run;
  6. 6. Column Types GROUP DISPLAY ANALYSIS ORDER ACROSS COMPUTED
  7. 7. Group & ComputeMean Weight & HeightCompute a New ColumnSummarize Mean
  8. 8. Proc Report data=sashelp.class nowd; columns name sex age height weight ratio; define name / display ‘Name’ width=10; define sex / display ‘Gender’ width=6; define age / display ‘Age’ width=4; define height / analysis mean ‘Height’ format=8.1; define weight / analysis mean ‘Weight’ format=8.1; define ratio / computed format=6.2; compute ratio; ratio = height.mean / weight.mean; endcompute; rbreak after / summarize;
  9. 9. rbreak after / summarize;
  10. 10. Group & Compute Group by Sex Break After Sex
  11. 11. Proc Report data=sashelp.class nowd; columns sex name age height weight ratio; define name / display ‘Name’ width=10; define sex / group ‘Gender’ width=6; define age / display ‘Age’ width=4; define height / analysis mean ‘Height’ format=8.1; define weight / analysis mean ‘Weight’ format=8.1; define ratio / computed format=6.2; compute ratio; ratio = height.mean / weight.mean; endcompute; break after sex / summarize;
  12. 12. break after sex / summarize;
  13. 13. Percentage of Weight Column Alias Analysis With No Print Compute Before Summarize with Style
  14. 14. Proc Report data=sashelp.class nowd; columns sex name age height weight weight=weight2 weight_pct; define name / display ‘Name’ width=10; define sex / group ‘Gender’ width=6; define age / display ‘Age’ width=4; define height / analysis mean ‘Height’ format=8.1; define weight / analysis noprint ‘Weight’ format=8.1; define weight2 / analysis mean Weight format=8.1; define weight_pct / computed % of Weight format=8.2; compute weight_pct; weight_pct = weight.sum / weight_sum; endcompute; compute before sex; weight_sum = weight.sum; endcompute; break after sex / summarize style=header;
  15. 15. Weight2
  16. 16. Percentage Bars Slider Tagset Style Over Rides Slide bar Percentages
  17. 17. ods tagsets.slider file=example6.html style=slider;Proc Report data=sashelp.class nowd ; columns sex name age height weight weight=weight2 weight_pct; define sex / group Gender width=6; define name / display Name width=10; define age / display Age width=4; define height / analysis mean Height format=8.1; define weight / analysis noprint format=8.1; define weight2 / analysis mean Weight format=8.1; define weight_pct / computed % of Weight format=Percent6. left style(column)=bar[tagattr="slider"];
  18. 18. format=Percent6.leftstyle(column)=bar[tagattr="slider"];
  19. 19. Survey Report Survey Tagset Group By Question Order By Department Line Statement
  20. 20. Simple Datacards;The computer I have is adequate for my needs Design 10 30 13% 50% 37% 2002The computer I have is adequate for my needs Marketing 20 30 10% 40% 50% 2002The computer I have is adequate for my needs Devel 10 50 19% 60% 21% 2002The computer I have is adequate for my needs Pubs 40 20 10% 67% 23% 2002The Software on my computer is always up to date Design 10 30 5% 48% 47% 2002The Software on my computer is always up to date Marketing 40 40 10% 50% 40% 2002The Software on my computer is always up to date Devel 10 30 23% 74% 3% 2002The Software on my computer is always up to date Pubs 50 60 17% 35% 47% 2002....
  21. 21. PROC REPORT DATA=test SPLIT="/" HEADLINE HEADSKIP CENTER nowd;by year;COLUMN question ( dept ( diff valid pct1 pct2 pct3 ) );define question / order noprint;DEFINE dept / ORDER FORMAT= $16. WIDTH=16 SPACING=2 LEFT "ITEMS"style=header;DEFINE diff / DISPLAY FORMAT= BEST9. WIDTH=9 SPACING=2 center "Diff % Fav";DEFINE valid / SUM FORMAT= BEST9. WIDTH=7 SPACING=2 center "Valid N" ;DEFINE pct1 / SUM FORMAT= PERCENT6. WIDTH=6 SPACING=2 center "Unfavorable" style=UnFav[tagattr="start"];DEFINE pct2 / SUM FORMAT= PERCENT6. WIDTH=6 SPACING=2 center "Neutral" style=Neutral[tagattr="in"];DEFINE pct3 / SUM FORMAT= PERCENT6. WIDTH=6 SPACING=2 center "Favorable" style=Fav[tagattr="end"];break before question /;compute before question / style=Question[just=left] ; line question $80.;endcomp;
  22. 22. Drill Down Report Summary Report Detail Reports Compute HyperLinks
  23. 23. proc report data=work.bptrial nowd split=; column patient drug sex fever nausea rash reaction; define patient / group; define drug / group; define sex / group; define fever / analysis sum noprint; define nausea / analysis sum noprint; define rash / analysis sum noprint; define reaction / computed Reaction?; compute before patient; ptno + 1; Anchor Counter Create a URL endcomp; compute patient; urlstring = "rephow2det.htm#pt" || left(put(ptno,3.0)); call define (_col_, url, urlstring ); endcomp;run;
  24. 24. ods html body = "rephow2det.htm" File To Match anchor = "pt1"; Anchor To Matchproc report data=work.bptrial nowd split=; column patient drug sex visitdate ("Blood Pressure" systolic slash diastolic) ("Reactions" fever nausea rash;....
  25. 25. Resourceshttp://ericgebhart.comhttp://support.sas.com/rnd/base/topics/odsmarkup/Eric@EricGebhart.com

×