What is the Program Data Vector (PDV)? What are its functions?
Answers were Sorted based on User's Feedback
Answer / nishant
When SAS processes a data step it has two phases.
Compilation phase and execution phase.
During the compilation phase the input buffer is created to
hold a record from external file. After input buffer is
created the PDV is created. The PDV is the area of memory
where sas builds dataset, one observation at a time. The PDV
contains two automatic variables _N_ and _ERROR_.
Is This Answer Correct ? | 32 Yes | 1 No |
Answer / poornima
PDV (Program Data Vector) is a logical area in memory where
SAS creates a dataset one observation at a time.
Is This Answer Correct ? | 15 Yes | 0 No |
Answer / cutepa1
To the above answers I like to add a bit of information that
PDV has even more automated variables such as
FIRST.<by-group-variable>, LAST.<by-group-variable>, _END_,
...etc, along with _ERROR_ and _N_ where each has got its
own significance to have a control over the execution of a
SAS Program.
Is This Answer Correct ? | 6 Yes | 0 No |
Answer / raj
It is a logical area in memory where SAS builds a data set,
one observation at a time. When a program executes, SAS
reads data values from the input buffer or creates them by
executing SAS language statements. The data values are
assigned to the appropriate variables in the program data
vector. From here, SAS writes the values to a SAS data set
as a single observation.
Along with data set variables and computed variables, the
PDV contains two automatic variables, _N_ and _ERROR_. The
_N_ variable counts the number of times the DATA step
begins to iterate. The _ERROR_ variable signals the
occurrence of an error caused by the data during execution.
The value of _ERROR_ is either 0 (indicating no errors
exist), or 1 (indicating that one or more errors have
occurred). SAS does not write these variables to the output
data set.
Is This Answer Correct ? | 5 Yes | 0 No |
Answer / pambrose
Source: SAS book
The PDV contains all the variables in the input data set, the variables created in DATA step statements, and the two variables, _N_ and _ERROR_, that are automatically generated for every DATA step. The _N_ variable represents the number of times the DATA step has iterated. The _ERROR_ variable acts like a binary switch whose value is 0 if no errors exist in the DATA step, or 1 if one or more errors exist
Variables that are created by the INPUT and the Sum statements are set to missing initially. Note that in this representation, numeric variables are initialized with a period and character variables are initialized with blanks. The automatic variable _N_ is set to 1; the automatic variable _ERROR_ is set to 0.
The variable TeamName is marked Drop in the PDV because of the DROP= data set option in the DATA statement. Dropped variables are not written to the SAS data set. The _N_ and _ERROR_ variables are dropped because automatic variables created by the DATA step are not written to a SAS data set
Is This Answer Correct ? | 3 Yes | 0 No |
what do you mean by data staging area? : Sas-di
DATA ABC; INPUT TDATE DATE9. AVG; CARDS; 18APR2008 150.00 19APR2008 167.00 20APR2008 123.00 21APR2008 145.00 ; RUN HOW CAN I FIND THE DIFFERENCE BETWEEN AVG OF 18APR2008 ANF 21APR2008?? IF ANY ONE GETS IT PLS TRY TO POST IT.
8 Answers Verinon Technology Solutions,
I am preparing SAS Certified Advanced Programmer for SAS 9 in 2014. If anybody has the latest dumps for this exam, please mail me at dhiman.mukherjee@gmail.com
how can u join the two tables without using proc sql Joins and nested queries ?
how does sas handle missing values in a merge? : Sas programming
what is the usage for assigning error=1 in a dataset ?
What is the one statement to set the criteria of data that can be coded in any step?
How sas treats the dsd delimiters?
What is the order of evaluation of the comparison operators: + - * /** ()?
Mention few capabilities of sas framework.
explain the difference between proc means and proc summary?
what is the difference between unique key and primary key? : Sas-di