作者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