SAS Library
Overview of SAS Procedures


This page was adapted from a page titled SAS Programs created by Professor Michael Friendly of York University .  We thank Professor Friendly for permission to adapt and distribute this page via our web site.


SAS Procedures exist to carry out all the forms of statistical analysis. A procedure is invoked in a "PROC step" which starts with the keyword PROC, such as:

PROC MEANS DATA=CLASS;
   VAR HEIGHT WEIGHT;

The VAR or VARIABLES statement can be used with all procedures to indicate which variables are to be analyzed. If this statement is omitted, the default is to include all variables of the appropriate type (character or numeric) for the given analysis.

Some other statements that can be used with most SAS procedure steps are:

BY variable(s);
Causes the procedure to be repeated automatically for each different value of the named variable(s). The data set must first be sorted by those variables.
ID variable(s);
Give the name of a variable to be used as an observation IDentifier.
LABEL var='label';
Assign a descriptive label to a variable.
WHERE (expression);
Select only those observations for which the expression is true.

For example, the following lines produce separate means for males and females, with the variable SEX labelled 'Gender'. (An ID statement is not appropriate, because PROC MEANS produces only summary output.)

PROC SORT DATA=CLASS;
   BY SEX;
RUN;
PROC MEANS DATA=CLASS;
   VAR HEIGHT WEIGHT;
   BY SEX;
   LABEL SEX='Gender';
RUN;

If the DATA= option is not used, SAS procedures process the most recently created dataset. In the brief summaries below, the required portions of a PROC step are shown in bold. Only a few representative options are shown.

Descriptive statistics

PROC CORR
Correlations among a set of variables.
PROC CORR DATA=SASdataset  options;
          options:NOMISS ALPHA
   VAR variable(s);
   WITH variable(s);
PROC FREQ
Frequency tables, chi tests
PROC FREQ DATA=SASdataset;
   TABLES variable(s) / options;
           options:NOCOL NOROW NOPERCENT
   OUTPUT OUT=SASdataset;
PROC MEANS
Means, standard deviations, and a host of other univariate statistics for a set of variables.
PROC MEANS DATA=SASdataset  options;
           options:N  MEAN  STD  MIN  MAX  SUM  VAR  CSS USS
   VAR variable(s);
   BY variable(s);
   OUTPUT OUT=SASdataset  keyword=variablename ... ;

Statistical options on the PROC MEANS statement determine which statistics are printed. The (optional) OUTPUT statement is used to create a SAS dataset containing the values of these statistics.

PROC UNIVARIATE
Univariate statistics and displays for a set of variables.
PROC UNIVARIATE DATA=SASdataset  options;
           options:PLOT
   VAR variable(s);
   BY variable(s);
   OUTPUT OUT=SASdataset  keyword=variablename ... ;

Linear models

SAS statements and options for regression (PROC REG) are described in more detail in the document PROC REG Summary. SAS statements and options for analysis of variance (PROC ANOVA and PROC GLM) described in the document PROC ANOVA and PROC GLM.

PROC ANOVA
Analysis of variance (balanced designs)
PROC ANOVA DATA=SASdataset  options;
   CLASS variable(s);
   MODEL dependent(s)= effect(s);
PROC GLM
General linear models, including ANOVA, regression and analysis of covariance models.
PROC GLM DATA=SASdataset  options;
   CLASS variable(s);
   MODEL dependent(s)= effect(s);
   OUTPUT OUT=SASdataset  keyword=variablename ... ;
PROC REG
Regression analysis
PROC REG DATA=SASdataset  options;
   MODEL dependent(s) = regressors
 / options;
   PLOT variable | keyword. *
        variable | keyword. = symbol ;
   OUTPUT OUT=SASdataset  P=name R=name ... ;

Plots and charts

PROC CHART
Histograms and bar charts

PROC CHART DATA=SASdataset  options;
   VBAR variable / options;
   HBAR variable / options;
           options: MIDPOINTS=  GROUP=  SUMVAR=
PROC PLOT
Scatter plots
PROC PLOT DATA=SASdataset  options;
           options: HPERCENT=  VPERCENT=
   PLOT yvariable *
        xvariable =  symbol / options;
   PLOT (yvariables) *
        (xvariables) =  symbol / options ;
           PLOT options: BOX  OVERLAY  VREF=  HREF=
   BY  variable(s) ;

Note that the parenthesized form in the PLOT statement plots each y-variable listed against each x-variable.

Utility procedures

PROC PRINT
Print a SAS data set

PROC PRINT DATA= SASdataset  options;
           options: UNIFORM  LABEL  SPLIT='char'
   VAR variable(s);
   BY variable(s);
   SUM variable(s);
PROC SORT
Sort a SAS data set according to one or more variables.

PROC SORT DATA=SASdataset  options;
           options: OUT=
   BY variable(s);

How to cite this page

Report an error on this page or leave a comment

The content of this web site should not be construed as an endorsement of any particular web site, book, or software product by the University of California.