作者cicatrix (SAS.VaR修行中...)
看板Statistics
標題[問題] SAS計算小數點問題
時間Tue Nov 27 04:34:35 2007
DM' LOG ; CLEAR ; OUTPUT ; CLEAR' ;
DATA EWC;
*read file from your computer;
INFILE 'G:\R_EWC.csv';
INPUT symbol $ 3. @5 date 8. @14 time $ 5. @20 price 7.3 ;
PROC SORT DATA=EWC; BY date; RUN;
DATA sac; SET EWC; BY date;
symbol = upcase(symbol);
logprice = LOG10(price);
return=DIF(logprice);
volatility=return*return;
IF FIRST.date THEN DO; volatility=0; return=0; END;
RUN;
PROC PRINT DATA =sac;
PROC SORT DATA = sac ;
BY date;
RUN;
PROC PRINT DATA = sac;
BY date;
SUM volatility;
VAR symbol volatility;
PROC MEANS data=sac noprint;
var volatility ;
by date;
output out=REWC sum=RV ;
proc print data=REWC;
VAR date RV;
run;
以上是小弟寫的程式
最後應該是會列出
date RV
20050103 .000012301
20050104 .000011102
20050105 .000010101
.
.
.
.
.
20050301 .0000(實際上上面寫出來的sum算出來的結果是 0.000010111)
20050302 .0001
現在就變成有些print出來是算到小數點第九位 有些只到第四位
因為算RV每天的波動算是挺小的 所以僅算到第四位上面的值很可能就是0
這樣的問題有辦法全部都以算到小數點較精準的為基準嗎(第九位)
麻煩了..
--
▂▂▂ ▲ ◢ ◥ ◢◢◢ ▂▁▁▂
◥▼︶▼◤ ╳囧╳ . ▕●▏ ◢ @ ◣ ███ │
★ ╲╱ ★ ╳_ _╳ .. ∥∥∥∥ ◥ ▆ ◤ ▁●▁ ●│
●
◥◤ ★╳ 皿 ╳ . . ║︿║ ◤| | |︿| │▁│
★ ■ XX . ▲  ̄ ◥ ■ ■
嗆辣紅椒 克里姆王 性感手槍 鋼鍊手指 白色相簿 白金之星 轟炸空門
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.124.203
1F:推 sgazn:proc means noprint maxdec=9; 11/27 10:00
2F:推 cicatrix:謝謝 11/27 15:51
3F:推 cicatrix:感謝一樓的朋友 剛剛試過已經ok了 11/27 16:06
4F:推 cicatrix:好像還是有問題 =.= 我在試試看好了 11/27 16:15
5F:推 eigenvalue:只能在Proc Mean 底下嗎?其他的Proc 好像不能通用? 11/28 23:16
6F:推 cicatrix:對阿 11/29 01:13