SAS中文论坛
标题:
SAS如何提取观测的个数
[打印本页]
作者:
shiyiming
时间:
2010-8-12 08:20
标题:
SAS如何提取观测的个数
我想写一个macro,里面要用到一个数据的观测个数那么次的循环,就是:
%d i=1 %to nobs( that is number of observations.)
当然这个macro的一个参数就是某个data啦。但是如何找到对应数据集的这个nobs呢,我没法把它写成一个代表数字的变量呀。不知道我把问题描述清楚了没有,向板上各位高手求助啦!
恳请大家帮助拉!
作者:
shiyiming
时间:
2010-8-12 09:04
标题:
Re: SAS如何提取观测的个数
[code:qqyayegi]%macro test(dsname);
%let dsid=%sysfunc(open(&dsname,i));
%let nobs=%sysfunc(attrn(&dsid,nlobs));
%put NOTE:*** NOBS=&nobs ***;
%let rc=%sysfunc(close(&dsid));
%mend;
%test(sashelp.class)
proc print data=sashelp.class;
run;[/code:qqyayegi]
作者:
shiyiming
时间:
2010-8-13 08:58
标题:
Re: SAS如何提取观测的个数
[code:35leqoxb]%macro em_im (dsname);
/***********
我是想通过一些代码得到针对参数里的ds 的观测值数量;
code
*这个code能够最后实现把观测值数量作为一个数存为num_ods;
************/
%let dsid=%sysfunc(open(&dsname,i));
%let num_obs=%sysfunc(attrn(&dsid,nlobs));
%let rc=%sysfunc(close(&dsid));
%do i=1 %to &num_obs;
/************
以下是我想进行的一些编程
*********/
%put NOTE-EXECUTE &i TIME;
%end;
%mend;
%em_im(sashelp.class)[/code:35leqoxb]
作者:
shiyiming
时间:
2010-8-13 17:24
标题:
Re: SAS如何提取观测的个数
[code:ldr12vi3]
%macro mac(NEW=,OLD=);
%do i = 1 %to toal;
DATA &NEW;
set &OLD nobs=total;
run;
%end;
%mend;
[/code:ldr12vi3]
这样不是也可以吧?
欢迎光临 SAS中文论坛 (https://mysas.net/forum/)
Powered by Discuz! X3.2