data WORK.GEO;
infile datalines;
input City $20.;
if City='Tulsa' then
State='OK';
Region='Central';
if City='Los Angeles' then
State='CA';
Region='Western';
datalines;
Tulsa
Los Angeles
Bangor
;
run;
After data step execution, what will data set WORK.GEO contain?
A.
City State Region
----------- ----- -------
Tulsa OK Western
Los Angeles CA Western
Bangor Western
B.
City State Region
----------- ----- -------
Tulsa OK Western
Los Angeles CA Western
Bangor
C.
City State Region
----------- ----- -------
Tulsa OK Central
Los Angeles CA Western
Bangor Western
D.
City State Region
----------- ----- -------
Tulsa OK Central
Los CA Western
Bangor
Answer: A
本文属于博客:http://crackman.net/ 版权归作者所有,如有转载,请注明出处!未经本作者同意不得用于商业应用。
其他本博客文章均作此声明!
本题考察的时候IF THEN语句的应用。
原始题目可能存在一些错误。我做了一些更正。关键是大家要掌握这个知识点。下面来解释一下程序如何产生这个结果的过程。
data WORK.GEO;
infile datalines; /*1*/
input City $20.;/*2*/
if City='Tulsa' then
State='OK';/*3*/
Region='Central';/*4*/
if City='Los Angeles' then
State='CA';/*5*/
Region='Western';/*6*/
datalines;
Tulsa
Los Angeles
Bangor
;
run;
1.1(读入第一行数据)--2--3(IF判断为真,所以STATE=OK)--4(变量值REGION=CENTRAL)---5(判断为假,所以STATE的值维持OK不变)---6(替换原始的REGION变量值为WESTERN)
2.1(读入第二行数据)--2--3(IF为假,直接执行第4语句,此时,STATE为缺失值)--4(变量值修改为CENTRAL)---5(判断为真,所以STATE的缺失值改为CA)---6(REGION变量值改为WESTERN)
3.1(读入第三行数据)--2--3(IF为假,直接执行语句4,此时STATE为缺失值)--4(变量值修改为CENTRAL)---5(判断为真,所以STATE的缺失值改为CA)---6(REGION变量值改为WESTERN)。
所以无论签名的region怎么变化,到后面的第六条语句总是在修改,随意region一直为一个值,就是western。
对每一行数据读入并做完处理之后就输出到数据集GEO中。





雷达卡






京公网安备 11010802022788号







