Testing SAS列输入跳过行

Testing SAS列输入跳过行,testing,sas,Testing,Sas,我在看SAS基础考试题时,遇到了一个特别的问题: data test; input employee_name $ 1-4; if employee_name = ‘Ruth’ then input idnum 10-11; else input age 7-8; datalines; Ruth 39 11 Jose 32 22 Sue 30 33 John 40 44 ; run; 起初我以为当员工名为“Ruth”时,IDNum应该是11,但它似乎跳过了Ruth行,跳到了第二行,而是

我在看SAS基础考试题时,遇到了一个特别的问题:

data test;
input employee_name $ 1-4; 
if employee_name = ‘Ruth’ then input idnum 10-11; 
else input age 7-8; 
datalines;
Ruth 39 11
Jose 32 22
Sue  30 33
John 40 44
;
run;
起初我以为当员工名为“Ruth”时,IDNum应该是11,但它似乎跳过了Ruth行,跳到了第二行,而是输入了22。为什么苏的年龄是40岁而不是30岁?有人能解释为什么会这样吗?多谢各位

结果如下:

Name  IDnum  Age
Ruth  22
Sue          40

如果输入语句末尾没有尾随的
@
@
,则同一数据步骤中的任何后续输入语句将跳过当前行的其余部分,从下一行开始读取。

如果输入语句末尾没有尾随的
@
@
,同一数据步骤中的任何后续输入语句都将跳过当前行的其余部分,从下一行开始读取。

如果运行发布的代码,您列出的结果不是您得到的结果。事实上,您发布的代码无法运行,因为它使用的是“智能引号”,而不是字符串文字周围的实际引号。使用-答案附带解释!如果运行发布的代码,您列出的结果不是您得到的结果。事实上,您发布的代码无法运行,因为它使用的是“智能引号”,而不是字符串文字周围的实际引号。使用-答案附带解释!