0% found this document useful (0 votes)
408 views

What Is PDV (Program Data Vector)

The program data vector (PDV) is a logical area in memory where SAS builds a data set one observation at a time. The input buffer is a logical area where SAS reads each record of raw data when using an INPUT statement. SAS reads data from the input buffer or creates values and assigns them to variables in the PDV, then writes the observation to the data set. The PDV contains one observation while the input buffer contains a single record of raw data.

Uploaded by

genius_gks
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
408 views

What Is PDV (Program Data Vector)

The program data vector (PDV) is a logical area in memory where SAS builds a data set one observation at a time. The input buffer is a logical area where SAS reads each record of raw data when using an INPUT statement. SAS reads data from the input buffer or creates values and assigns them to variables in the PDV, then writes the observation to the data set. The PDV contains one observation while the input buffer contains a single record of raw data.

Uploaded by

genius_gks
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

QUESTION

WHAT IS PDV? HOW IT IS RELATED TO


INPUT BUFFER IN SAS?


Answer
# 1
Program data vector (PDV)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 (a logical area in memory into
which SAS reads each
record of raw data when SAS
executes an INPUT statement) 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.
When the DATA step
reads a SAS data set, SAS reads the
data directly into the
program data vector.
Is This Answer Correct
?
59 Yes

0 No

Vera Royzman







Answer
# 2
pdv is though a logical concept only
but helps u to
understand the most important i.e,
THE DATA STEP.
Two things u need to understand the
compilation Phase and
the Execution Phase.
Anuj Goyal
While reading a Raw data file:-

1) Compilation Phase - it checks for
syntax errors and
conversion of ur data step into the
machine code along with
creation of two things viz. INPUT
BUFFER and PDV.
At the end of compilation phase u will
have these two things
with u (Input Buffer and PDV).
In PDV all the variables present in the
INPUT statement in
the data step will be give place in ur
PDV as per the length
mentioned by u.

2) Execution Phase - Before beginning
of the this phase all
the variables will be initialized to
missing(if character)
and periods(if numeric)[use "put _all_"
statement to check
ur PDV status in the log].
Then when the input statement is
encountered for the first
time The first record from raw data file
is moved from it to
ur INPUT BUFFER. Then one to one
mapping is done and data is
then again moved to PDV(So u can
can take input buffer as a
temporary storage area for ur data,
one at a time). Then
when run statement is encountered,
then the implicit OUTPUT
statement forces the read data row to
the output data set.
Is This Answer Correct
?
20 Yes

3 No












Answer
# 3
input buffer contains one record of
Raw data.
PDV contains one observation of
dataset.

input buffer is created at the time of
reading raw data to
store raw data and send to PDV.
Is This Answer Correct
?
12 Yes

4 No

Santhosh.lyathkula


Answer
# 4
PDV is the program Data Vector. It
takes each observation at
a time and allocates the length given
in the input
statement.The allocation of spaces is
done in the
compliation phase and the variables
goes in it at the
execution phase.
Example:Builder builds the house but
it is used by the people.
It has 2 variables by default which are
_n_ and _error_.
_n_ gives us the observation number.
_error_ if their is no error then it is 0 or
else it shows 1
even though we have 'n' no.of errors.
And then it creates 'n' no.of variables
specified in the
data statement.
Input buffer is only needed for non sas
files to
read the raw data and store in it.
Where as, sas files do
not need the input buffer.
Example: Converting an Excel file into

a sas file i.e while
converting it needs some space for
storage.
Is This Answer Correct
?
6 Yes

0 No

You might also like