Top 19 Advanced Sas Interview Questions You Must Prepare 14.Jun.2024

Proc glm performs simple and multiple regression, analysis of variance (ANOVAL), analysis of covariance, multivariate analysis of variance and repeated measure analysis of variance.

The difference between the NODUP and NODUPKEY is that, NODUP compares all the variables in our dataset while NODUPKEY compares just the BY variables.

Every time we invoke SAS, the macro processor automatically creates certain macro var.

eg: &sysdate, &sysday.

PROC gplot has more options and can create more colorful and fancier graphics.

A macro variable defined in parentheses in a %MACRO statement is a macro parameter. Macro parameters allow you to pass information into a macro.

Here is a simple example:

%macro plot (yvar= ,xvar= ); proc plot; plot &yvar*&xvar; run; %mend plot; %plot(age,sex)

SAS INFORMATS are used to read, or input data from external files known as Flat Files ASCII files, text files or sequential files). The informat will tell SAS on how to read data into SAS variables.

SYMPUT puts the value from a dataset into a macro variable where as SYMGET gets the value from the macro variable to the dataset.

To run program successfully, and you have following basic elements:

There should be a semi-colon at the end of every line

A data statement that defines your data set

Input statement

There should be at least one space between each word or statement

A run statement

For example: Infile ‘H: StatHWyourfilename.dat’;

The data types in SAS are Numeric and Character.

If we want use a program step for executing to execute the same Proc step on multiple data sets. We can accomplish repetitive tasks quickly and efficiently. A macro program can be reused many times. Parameters passed to the macro program customize the results without having to change the code within the macro program. Macros in SAS make a small change in the program and have SAS echo that change thought that program.

To display the contents of the SAS dataset, PROC print is used and also to assure that the data were read into SAS correctly. While, PROC CONTENTS display information about an SAS dataset.

The SAS System offers users a number of useful system options to help debug macro issues and problems. The results associated with using macro options are automatically displayed on the SAS Log.

Specific options related to macro debugging appear in alphabetical order in the table below:

MEMRPT: Specifies that memory usage statistics be displayed on the SAS Log.


The syntax of proc summary is same as that of proc me, it computes descriptive statistics on numeric variables in the SAS dataset.

The end of the macro is defined by %Mend Statement.

The %LOCAL that variable will be used only at the particular block only but in case of the %GLOBAL that variable will be used till the end of the SAS session.

SAS informats are placed in three categories:

  • Character Informats: $INFORMATw
  • Numeric Informats : INFORMAT w.d
  • Date/Time Informats: INFORMAT w

CALL SYMPUT takes a value from a data step and assigns it to a macro variable. I can then use this macro variable in later steps. To assign a value to a single macro variable,

We use CALL SYMPUT with this general form:

CALL SYMPUT (“macro-variable-name”, value);