全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2359 4
2016-11-29
考了BASE,87%,有些后悔,写个失败总结吧。
首先不要嫌麻烦,该看的书该做的笔记,做题和错题本,都要有,我就是嫌麻烦粗略看书+做题+一点总结,太次了。
然后把能够下载到的机经,反复看。因为今天我考的那一套题跟某个机经里面的题一模一样,是一模一样啊。但我起初没在意,不然稳上95%。

大家引以为鉴吧。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-11-30 09:40:47
楼主过了就好了哈~~

请问一下楼主是在哪儿考的?是和哪天的机经一模一样啊?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-30 10:38:43
annanini 发表于 2016-11-30 09:40
楼主过了就好了哈~~

请问一下楼主是在哪儿考的?是和哪天的机经一模一样啊?
广州考的,随便找的考点。

这篇机经忘记是论坛哪位大侠写的,题目摘录如下:
题目分享:
嚷嚷了这么久, 是时候分享楼主遇到的题目了!
70题:
3. 原题
5. 原题
6. 变型题 - 问为什么program fail. 原因就是KEEP statement should not include equal sign '='(类似这样的, 反正知道KEEP statement 不能有等号就是了)
10. 原题
11. 原题
13. 变型题 - Program里面第三个statement 变成 array Difcount{3} Diff1-Diff3; 答案选Diff1 Diff2 Diff3
15. 原题
16. 原题
17. 原题
20. 原题
21. 填空题 - Program里面第三个statement 变成 if Sales GT 50; 答案是1.
22. 原题
24. 原题
28. 原题
30. 原题
31. 原题
32. 原题
33. 原题
34. 原题
35. 变型题 - output statement 变成了else output other; . 答案是2 2 1
36. 原题
37. 原题
40. DO WHILE 变成了 do until (Prod GT 6); 答案还是选7
42. text='US-Australia Denmark'; Pos=find(text, 'US', 'i', 5); 答案是SAS will assign to Pos a value of 5
43. 只问了怎么把numeric variable shipped_date 改成 character variable 然后是类似Feburary 02, 2009 这种形式的. 答案是 put(shipped_date, worddate).
46. Observation 里多了一个Revenue 2007 variabe with missing value, 不过答案还是1.6
51. 选项改了. 认真读题, 选一个包含metadata这个关键词的答案
52. SAS data set WORK.EMP_NAME 里多了一个observation, 这个observation不能和WORK.EMP_DEPT里任何一个数据匹配, 所以答案是3
53. 问题变成 what is the value of variable total before the first iteration of data step? 答案还是选missing
56. 原题
57. 这题values for variable day 变成了 9和12, 所以是要extract日期里面的day, 用day() function.
58. 原题
60. Drop=option 里少了一个variable, 所以答案是3
61. 原题
62. 题目变成create a report stored in a PDF file. 只要把原题答案里面的html 改成pdf就好了
65. 原题
66. 程序变成 data WORK.SALES;
                               do Year 1 to 7;
                                     do Month=1 to 12;
                                              X+1;
                                      end;
                                     output;
                                end; run;
                   答案是7个observations are written to the WORK.SALES data set
67. IF-Then statement 变成 if X<10 then X=3;  答案是X would get a value of 3
69. 原题


123题
7. 原题
11. 变型题. 答案还是end variable的值为1
27. 原题
50. 题目和答案一样, 只是变成了填空题. 记得题目已经给出了分号, 自己不用再填分号上去了
52. 原题
54. 原题
64. 变型题. 程序里依次是set statement, length statement 然后是 format statement. 反正variable length还是不变, 与原来data set里面一样, 因为set statement 在最最最前面
68. 原题
94. 原题
104. 原题
108. 原题
110. 原题, 只是数据变了


95题(70+25)
93. 选Qtrl1=sum(of month{*});


新题:
1. 给出两个data set, dataset A 里面包含 EmpID Name Salary 三个variable, dataset B 里包含 EmpIDNumber (类似,不是很记得了) Name Salary 三个variable. 问 data C; set A B; run; 执行之后, 新的data set C 里面有多少个variable. 答案是4个
2. 题目给出四个data set的命名, 问有哪几个是正确的. 类似于 2test, 2_test, _test, _2test. 答案是两个. 记得data set名字开头不能是数字,只能是 _ 或者字母
3. 只需读入前10个observations, 问infile statement 需要什么option. 答案是 obs=10
4. 给出一个data set, 例如 test, 里面的records是这样的(类似)
a b c d e
f g h
i j k l
m n o p q


程序给出来的是
data test2;
    set test;
    input name1




name2 name3




name4 name5;
run;
问在执行过程中_ERROR_是什么样的. 答案是 1 0 0 1. 因为name5 是numeric variable. 只要observations里 的第5个value是有character的话, 就会出现执行错误. 如果本来就没有记录, 例如第二和第三个observation, 程序自动给missing value, 不会生成error的.


5. 给出一个population 和growth rate, 问2012年至2021年的人口数. 题目中graphic里面是有每一年的记录,所以记得在DO LOOP里面加上output, 以至于每执行完一次iteration都会输出结果
6. YEARCUTOFF = 1920, YEAR1=19, YEAR2=20, 问DIFF=YEAR2-YEAR1. 答案是 -99.
7. label test='testing*one*two'; (类似的code), 问how to control the label to wrap to the next line? 答案是在proc print statement 处加上split='*' .
8. 读SAS LOG 辨析错误. 题目中读instream data的时候datalines 后面没有加分号导致出错.
9. ODS HTML FILE = 'file-specification'; proc print data=a; proc freq data=b; run; ODS HTML close. 题目问HTML FILE里面包含多少个结果的输出. 答案是both proc print 和 proc freq. 有些朋友疑惑 proc print data=a 后面没有run, 所以不知道会不会输出. 其实不影响, 只要proc freq后面有run就好. 楼主自己编过程序验证过了.
10. proc sort data=test; by var1 var2 var3 descending date var4; 答案是descending only applies to variable date.
11. 给出一个数据集test
var1 var2 var3
a      15     25
b      15     20
c       14     18 (数据类似, 反正方法都一样)


data test2;
    set test;
    retain total;
    input var1$ var2 var3;
    if _N_ =1 then total = 0;
       else total=var2+var3;
run;


答案应该是
var1   var2   var3   total
a        15     25       0
b        15     20       35
b        14     18        32
解析: 在compile阶段, 因为retain没有给variable total 赋值, 所以默认是missing. 执行阶段, 读入第一个observation 的时候, _N_=1, 所以第一个observation的 total=0. 因为retain total, 在第二次iteration中, _N_=2, total=0. 读入第二行数据时, 既然 if _N_ =1 is not true, 我们就执行 total=var2+var3. 区别于之前我们见过的题目, total并没有被累加, 而是被var2 和var3 的sum 取代了. 因此, 原来的total=0 被overwrite, 变成了total=15+20=35. 同样是因为retain total, 在第三次iteration中,  刚开始时PDV 里面_N_=3, total=35. 同样, 读入第三行数据时, total 被 var2+var3的和取代, 变成total=14+18=32.


12. 题目给出数据集 test
var1 var2
a       1        
b      3         
c       5        



data test2;
      set test;
     input var1 $ var2;
      total=total+var2;
      run;
proc print data=test2;
run;


答案应该是:
var1 var2 total
a       1        .
b      3         .
c       5        .

解析: total在compile的过程中assigned了missing value, 所以任何数跟missing value相加还是missing value.
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-30 11:09:58
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-30 12:15:48
Brjaxx 发表于 2016-11-30 10:38
广州考的,随便找的考点。

这篇机经忘记是论坛哪位大侠写的,题目摘录如下:
万分感谢!给楼主比心!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群