Thus far, we've investigated display, analysis, order, and group variables. You can also define variables as across variables, which are functionally similar to group variables. However, when you define a variable as being an across variable, SAS displays the groups that it creates horizontally rather than vertically.
Example 10.17 Section
The following program is nearly identical to the program in Example 10.14 which concerned the illustration of the use of a group variable. The only difference between the two programs is that the group keyword in the DEFINE statement for the Type variable has been replaced here with the across keyword:
PROC REPORT data = stat480.penngolf NOWINDOWS HEADLINE;
title 'Some Pennsylvania Golf Courses';
column Type Par Yards;
define Type / across 'Type of/Course' spacing = 6
width = 8 center;
define Par / analysis 'Total/Par';
define Yards / analysis format = comma6.0 'Total/Yardage'
width = 7 spacing = 4 center;
RUN;
Type of Course | Total | ||||
---|---|---|---|---|---|
Private | Public | Resort | SemiPri | Par | Yardage |
3 | 1 | 2 | 5 | 783 | 72,300 |
You might want to recall that when the group keyword was used in the DEFINE statement for the Type variable, the resulting report looked like this:
Type of Course | Total Par | Total Yardage |
---|---|---|
Private | 214 | 19,660 |
Public | 72 | 6,525 |
Resort | 144 | 14,141 |
SemiPri | 353 | 31,974 |
Now, launch and run the SAS program, and review the output to see the effect of replacing the group keyword with the across keyword. You should first note that, as claimed, the values of the Type variable are displayed horizontally rather than vertically. Then, you should observe that for the across variable, the table cells contain a frequency count for each Type of golf course. That is, the report indicates that the data set contains three private courses, one public course, two resort courses, and five semi-private courses. For the two analysis variables, Par and Yards, SAS displays the sum of all of their values. Quite a different report, eh?