作者startend (Pride & Prejudice)
站內Statistics
標題[討論] 請問這個語法哪裡有問題
時間Mon Jul 19 00:09:24 2010
因為最近開始使用SAS,順便考SAS BASE
不過太久沒碰的下場就是好多東西都忘記了....
想請問以下幾個題目,希望強者能夠提供一些見解(跪)
1.
data work.test;
capacity = 150;
if 100 le capacity le 200 then airplanetype = 'large' and staff = 10;
else airplanetype = 'small' and staff = 5;
run;
題目希望data set 長成如下,上面這個是錯的,只是我不確定錯在哪裡
capacity airplanetype staff
150 large 10
就題目而言,是因為else 少了一個if嗎?
另外就是if-then的語法裡面,如果有假設三個if-then的時候
一般都是打成if-then
else if-then
else (最後這個就不用加上?)
2.submit following
libname sasdata ' '
data allobs;
set sasdata.banks;
capital = 0;
do year = 2000 to 2020 by 5;
capital+((capital+2000)*rate);
output;
end;
run;
if sasdata.banks has five observation,how many observations will the ALLOBS
contain? Ans:25
這個我就掉到五里霧裡面了....
另外一個疑問是,output的使用時機,雖然講義上面是寫prevent continuous looping,
但感覺有一點抽象,另外是不是用了output,後面一定要用stop; ?
3.submit following
data work.XXX
set work.people (in = inemp)
work.money (in = insal);
if insal = inemp;
run;
work.people has 5 observations, and work.money has 7 observations
How many obs contain in work.XXXX? Ans: 0
因為這應該是一個concatenating,為什麼不是12個 obs?
4.
在從外部抓資料的時候
input style $ @;
style是一個variable的名字,但後面的@代表什麼意義?
因為我看到的都是input @4 style $2.;類似這種的,但@在後面的有特別意義嗎?
5.
data work.total;
infile where end = eof;
input name $ salary;
total + salary;
(if statement)
run;
which statement would write the last observation to the output data set?
Ans: if eof = 1;
不太了解題意,最後想問一下if如果再沒有then的搭配下,跟where statement有什麼
差別呢?
我想對大家來說這些都是很簡單的問題,還請大家不賜吝教,感恩
--
"When someone sees you as you really are and wants to be with you
,that's powerful."
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.47.5.122
推 tew:第1題提示 do; end; 07/19 02:01
→ tew:2000 2005 2010 2015 2020 都會產生5筆資料 07/19 02:02
→ tew:第三題 應該用merge set只會上下放置 就不會產生交集 07/19 02:04
推 tew:第五題 你自己寫一個變項 令他等於eof就會知道了 07/19 02:11
→ startend:謝謝!不過第一題的提示是說if then就要跟do 做合併嗎? 07/23 00:20