Computational Statistics I


This curricular unit (UC) is especially recommended for users without programming experience in the SAS© system, but who have knowledge of other programming languages or databases management. The UC provides a solid foundation for information management through SAS programming. In this course, students will acquire skills to develop sophisticated programs for the manipulation and analysis of data and files. The UC's main objective is to provide knowledge about the fundamental concepts of SAS programming.

General characterization





Responsible teacher

Frederico Miguel Campos Cruz Ribeiro de Jesus


Weekly - Available soon

Total - Available soon

Teaching language

Portuguese. If there are Erasmus students, classes will be taught in English


Not applicable.


  • SAS® 9.2 Language Reference: Concepts. Second Edition. Cary, NC: SAS Institute Inc. 2010.;
  • SAS® 9.2 Language Reference: Dictionary. Third Edition. Cary, NC: SAS Institute Inc. 2010.;
  • Base SAS® 9.2 Procedures Guide: Statistical Procedures. Third Edition. Cary, NC: SAS Institute Inc. 2010.;
  • Other documentation and material provided by the teacher.

Teaching method

The curricular unit is based on mix of theoretical lectures and practical classes. Each session will introduce new concepts and methodologies, as well as the applications of the learnt concepts using different computational tools. Different learning strategies will be used, such as lectures, slide show demonstrations, step-by-step tutorials on how to approach practical examples, questions, and answers.

The practical component is focused in exploring the different computational tools by the students, including a discussion on the best approach under different scenarios.

Evaluation method

Final exam (100%) in both evaluation calls.

Subject matter

The course is organized in seven Learning Units (LU):

LU1. Introduction to the SAS System

  • Interface and basic concepts
  • SAS programs
  • SAS data sets
  • SAS data libraries

LU2. Data access

  • Reading data from unstructured files
  • Entering data directly in the program
  • Reading data from structured files

LU3. Data modification

  • Reading an existing data set
  • Variable selection
  • Observation selection
  • Descriptive labels
  • Creating variables and assigning values
  • SAS functions
  • Creating variables conditionally
  • Using a value in a later observation

LU4. Combining data sets

  • Concatenating data sets
  • Merging data sets

LU5. Production of reports

  • Simple reports
  • Displaying totals and subtotals
  • Processing groups of data
  • Titles, formats and labels

LU6. Some statistical procedures

  • PROC NPAR1WAY (self-study)

LU7. Advanced topics in data modification

  • Exporting SAS data
  • Converting character and numeric data
  • Simultaneous creation of multiple data sets
  • Processing data with DO loops
  • Processing data with arrays
  • SQL procedure