作者cicatrix (SAS.VaR修行中...)
看板YZUfinGrad95
标题[心得] 没有甚麽重要的 但是无聊写写心得
时间Fri Nov 23 04:31:12 2007
*SAS不会去read
*记录每个语法的功用解读
;每行结尾要打上这个符号
11/20-11/23想出的程式
DM' LOG ; CLEAR ; OUTPUT ; CLEAR' ; →可以把每次output的结果清除乾净
*we name a newfile; 只留下最新的output结果
DATA EWC; → 命名一个档案 叫做EWC{你想取QQ就改成DATA QQ}
*read file from your computer;
INFILE 'G:\R_EWC.csv';
INPUT symbol $ 3. @5 date 8. @14 time $ 5. @20 price 6.3 ; →三种读取方法之一
*create some new variables; 请参考财金计量
symbol = upcase(symbol);
logprice = LOG10(price);
return=DIF(logprice);
volatility=return*return;
↑
以上这些都是自己设定函数去算你要的资讯
这里做完应该是由
symbol date time price
EWC 20050103 9:20 10
EWC 20050103 10:00 20
EWC 20050104 11:00 10
变成
symbol date time price logprice return volatility
EWC 20050103 9:20 10 xxx xxx xxx
EWC 20050103 10:00 20 xxx xxx xxx
EWC 20050104 11:00 10 xxx xxx xxx
xxx→的结果你看上面的变数函数应该知道
*print the above information; →要印出来才可以看到上面那个格式
PROC PRINT DATA =EWC;
RUN;
*SORT THE DATA;
PROC SORT DATA = EWC ; →我想sort EWC这个档案
BY date; →以date这个条件分类sort
RUN; →执行
PROC PRINT DATA = EWC →把结果印出来
BY date; →同上面BY date
SUM volatility; →加总volatiltiy
VAR symbol volatility; →我只想印出"symbol""volatility"两个变数的资讯
这样会变怎麽样?
这样...
symbol date time price logprice return volatility
EWC 20050103 9:20 10 xxx xxx xxx
EWC 20050103 10:00 20 xxx xxx xxx
EWC 20050104 11:00 10 xxx xxx xxx
转成这样
----------date 20050103------------
symbol volatility
EWC XXX
EWC XXX
--------
sum ccc
---------date 20050104-------------
symbol volatility
EWC XXX
-----------------------------------
PROC MEANS DATA=EWC noprint;
VAR volatility ;
BY date;
output OUT=REWC sum=RV ;
RUN;
PROC PRINT DATA=REWC;
RUN;
最後变成
date RV
20050103 ccc
20050104 xxx
--
▂▂▂ ▲ ◢ ◥ ◢◢◢ ▂▁▁▂
◥▼︶▼◤ ╳囧╳ . ▕●▏ ◢ @ ◣ ███ │
★ ╲╱ ★ ╳_ _╳ .. ∥∥∥∥ ◥ ▆ ◤ ▁●▁ ●│
●
◥◤ ★╳ 皿 ╳ . . ║︿║ ◤| | |︿| │▁│
★ ■ XX . ▲  ̄ ◥ ■ ■
呛辣红椒 克里姆王 性感手枪 钢链手指 白色相簿 白金之星 轰炸空门
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.82.44
1F:→ cicatrix:大家一直都想留点程式的资源下来 那总要有人写吧 11/23 04:31
2F:→ cicatrix:在下不才 提供一点心力了.... 11/23 04:31
※ 编辑: cicatrix 来自: 61.224.82.44 (11/23 04:37)
3F:推 msgh0133:推...等我跑完我也把我的SAS贴上来好了...跑得完的话^^" 11/23 11:53