SAS中文论坛

标题: 变量的分组并求均值 [打印本页]

作者: shiyiming    时间: 2008-12-15 15:22
标题: 变量的分组并求均值
我需要对一个变量进行分组,从1开始,每10个一组,并分别求出平均数。第1-10个观测为第一组,11-20个为第二组,以此类推,并分别求均值,该如何循环呢?
作者: shiyiming    时间: 2008-12-15 16:51
标题: Re: 变量的分组并求均值
data ex;
do i= 1 to  N;
     do j=1 to 10
       input x @@;
   end;
end;

proc means;
...
作者: shiyiming    时间: 2008-12-15 21:12
标题: Re: 变量的分组并求均值
[code:3u2bk0w9]%let d=10;/*10个为一组*/
data result;
        set 你的数据集 end=last;
        if mod(_n_,&d)=1 then sum=0;
        sum+age;
        if mod(_n_,&d)=0 then do;mean=sum/&d;group=ceil(_n_/&d);output;end;
        else if last then do;mean=sum/mod(_n_,&d);group=ceil(_n_/&d);output;end;
run;
[/code:3u2bk0w9]
作者: shiyiming    时间: 2008-12-15 22:22
标题: Re: 变量的分组并求均值
[code:1oxgyo2c]data ahuige;
  do i=1 to 100;
  output;
  end;
run;

proc sql;
  select ceil(i/20) as grp,avg(i)
  from ahuige
  group by calculated grp
  ;[/code:1oxgyo2c]
作者: shiyiming    时间: 2008-12-16 10:30
标题: Re: 变量的分组并求均值
data a;
input data;
id=_n_;
if mod(data,10)=1 then sum=0;
sum+data;
drop id;
cards;
...
...
...
;
run;




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2