|
|
沙发

楼主 |
发表于 2008-8-17 23:22:13
|
只看该作者
Re: 问几个头疼的简单问题
1、函数sum()和min()能不能对变量variable列求值
例如 min(x),sum(age)等等,我试了好像不行,有没有函数可以简单的完成?
[color=#FF0000:1h5bhdzc]答:这两个函数在sas data步中都是需要至少两个变量,你可以用proc sql,这样更简单,或者用sas的data步处理。[/color:1h5bhdzc]
2、我在一个data step里边写下求值公式,求了两个值,怎样把他输出到另外的data step里边,例如
data ynb2.ftp1;
set ynb.d_zz_test(keep=ZZRQ HBF KMH BRDFYE);
if year(DATEPART(ZZRQ))=2007 and HBF='RMB' and BRDFYE NE
0 and (substrn(KMH,1,3)='201' or substrn(KMH,1,5)
='21101');
NRJDFYE=sum(of BRDFYE:)/365;
MIN_BRDFYE=min(BRDFYE);
CDL=MIN_BRDFYE/NRJDFYE;
output;
run;
这里边求出来的两个值NRJDFYE、CDL能不能在另外的过程里边被调用,我试了可是另外的过程找不到这两个变量
[color=#FF0000:1h5bhdzc]答:这里可以用call symput('NRJDFYE',NRJDFYE)你在别的地方用的时候用&NRJDFYE引用下就可以了。[/color:1h5bhdzc]
3、set ynb2.ftp1 ynb2.ftp2 ynb2.ftp3 ynb2.ftp4; 这样的语句可以输入多个数据集
但是proc print data= 后面能不能输入多个数据集,我按set ynb2.ftp1 ynb2.ftp2 ynb2.ftp3 ynb2.ftp4; 这样写好像不行
[color=#FF0000:1h5bhdzc]答:按逻辑来讲,干嘛一次打印那么多表?人也看不过来啊,一次一张表不是更好?[/color:1h5bhdzc] |
|