标题: 跟crakman做sas base认证试题(30) [打印本页] 作者: shiyiming 时间: 2010-11-12 01:19 标题: 跟crakman做sas base认证试题(30) From crackman's blog on Baidu
<p><font size="4">30.You're attempting to read a raw data file and you see the following messages displayed in the SAS Log: <br>
<br>
NOTE: Invalid data for Salary in line 4 15-23.<br>
RULE: ----+----1----+----2----+----3----+----4----+----5--<br>
4 120104 F 46#30 11MAY1954 33<br>
Employee_Id=120104 employee_gender=F Salary=. birth_date=-2061 _ERROR_=1 _N_=4<br>
NOTE: 20 records were read from the infile 'c:\employees.dat'.<br>
The minimum record length was 33.<br>
The maximum record length was 33.<br>
NOTE: The data set WORK.EMPLOYEES has 20 observations and 4 variables.<br>
<br>
What does it mean? </font></p>
<p><font size="4"> A. A compiler error, triggered by an invalid character for the variable Salary. <br>
B. An execution error, triggered by an invalid character for the variable Salary.<br>
C. The 1st of potentially many errors, this one occurring on the 4th observation.<br>
D. An error on the INPUT statement specification for reading the variable Salary.</font></p>
<p><font size="4">Answer: B</font></p>
<p><font size="4">本文属于博客:</font><a href="http://hi.baidu.com/crack_man/home"><font size="4"><!-- m --><a class="postlink" href="http://hi.baidu.com/crack_man/home">http://hi.baidu.com/crack_man/home</a><!-- m --></font></a><font size="4"> 版权归作者所有,欢迎转载!如有转载,请务必注明出处!未经本文作者同意不得用于商业应用。</font></p>
<p><br>
<font size="4">这里先给大家解释哈两个名词:<br>
编译阶段(Compilation Phase):在这个阶段,系统扫描每个语句检查它是否有语法错误。大部分语法错误导致系统无法对数据步作</font></p>
<p><font size="4">进一步的处理。在编译阶段将建立要创建的数据集的描述部分。<br>
语法检查的主要内容:<br>
漏掉或错拼的关键词<br>
无效的变量名<br>
遗漏或错误的符号<br>
无效的选择项 <br>
在内存中建立程序数据列PDV<br>
用于建立SAS系统的数据集,一次只处理一个观测<br>
两个自动变量<br>
_N_ 记录DATA步执行的次数<br>
_ERROR_指示出错信息. 0表示无错误,1表示有错误<br>
建立数据集的描述部分<br>
数据集名<br>
观测数和变量个数<br>
变量名及其属性</font></p>
<p><br>
<font size="4">执行阶段(Execution Phase):若数据步编译成功,就开始执行阶段。在这个阶段对源数据文件的每一条记录斗执行一次数据步,除</font></p>
<p><font size="4">非在程序中指明其它处理方式。在这个阶段建立数据集的数据部分。</font></p>
<p><font size="4">执行顺序<br>
PDV中外部为题初始化为缺省值<br>
输入每条记录至输入缓冲器,按INPUT语句读至PDV<br>
按数据步的其它语句处理后存入PDV<br>
在数据步结束时缺省地将PDV的内容作为一条观测<br>
写入新的数据集<br>
回到数据步的开始.使PDV中外部变量初始化为缺省值<br>
对源文件中每条记录都按上述步骤执行一次<br>
当对源文件最后一条记录执行结束后,数据步执行完成</font></p>
<p><br>
<font size="4">对上述两个名字了解之后,很容理解答案为B。是在读取数据的时候出现的错误。</font></p>
<p> </p> <a href="http://hi.baidu.com/crack%5Fman/blog/item/175605f06f8385ff7709d753.html">阅读全文</a>