# Example 2: Computing Descriptive Statistics with Class Variables

 Features: PROC MEANS statement option: MAXDEC= CLASS statement TYPES statement Data set: GRADE

### Details

This example does the following:
• analyzes the data for the two-way combination of class variables and across all observations
• limits the number of decimal places for the displayed statistics

## Program

`options nodate pageno=1 linesize=80 pagesize=60;`
```data grade;
input Name \$ 1-8 Gender \$ 11 Status \$13 Year \$ 15-16
Section \$ 18 Score 20-21 FinalGrade 23-24;
datalines;
Abbott    F 2 97 A 90 87
Branford  M 1 98 A 92 97
Crandell  M 2 98 B 81 71
Dennison  M 1 97 A 85 72
Edgar     F 1 98 B 89 80
Faust     M 1 97 B 78 73
Greeley   F 2 97 A 82 91
Hart      F 1 98 B 84 80
Isley     M 2 97 A 88 86
Jasper    M 1 97 B 91 93
;```
`proc means data=grade maxdec=3;`
`   var Score;`
`   class Status Year;`
`   types () status*year;`
```   title 'Final Exam Grades for Student Status and Year of Graduation';
run;```

## Program Description

Set the SAS system options. The NODATE option suppresses the display of the date and time in the output. PAGENO= specifies the starting page number. LINESIZE= specifies the output line length, and PAGESIZE= specifies the number of lines on an output page.
`options nodate pageno=1 linesize=80 pagesize=60;`
Create the GRADE data set. GRADE contains each student's last name, gender, status of either undergraduate (1) or graduate (2), expected year of graduation, class section (A or B), final exam score, and final grade for the course.
```data grade;
input Name \$ 1-8 Gender \$ 11 Status \$13 Year \$ 15-16
Section \$ 18 Score 20-21 FinalGrade 23-24;
datalines;
Abbott    F 2 97 A 90 87
Branford  M 1 98 A 92 97
Crandell  M 2 98 B 81 71
Dennison  M 1 97 A 85 72
Edgar     F 1 98 B 89 80
Faust     M 1 97 B 78 73
Greeley   F 2 97 A 82 91
Hart      F 1 98 B 84 80
Isley     M 2 97 A 88 86
Jasper    M 1 97 B 91 93
;```
Generate the default statistics and specify the analysis options. Because no statistics are specified in the PROC MEANS statement, all default statistics (N, MEAN, STD, MIN, MAX) are generated. MAXDEC= limits the displayed statistics to three decimal places.
`proc means data=grade maxdec=3;`
Specify the analysis variable. The VAR statement specifies that PROC MEANS calculate statistics on the Score variable.
`   var Score;`
Specify subgroups for the analysis. The CLASS statement separates the analysis into subgroups. Each combination of unique values for Status and Year represents a subgroup.
`   class Status Year;`
Specify which subgroups to analyze. The TYPES statement requests that the analysis be performed on all the observations in the GRADE data set as well as the two-way combination of Status and Year, which results in four subgroups (because Status and Year each have two unique values).
`   types () status*year;`
Specify the title.
```   title 'Final Exam Grades for Student Status and Year of Graduation';
run;```

## Output

PROC MEANS displays the default statistics for all the observations (_TYPE_=0) and the four class levels of the Status and Year combination (Status=1, Year=97; Status=1, Year=98; Status=2, Year=97; Status=2, Year=98).