标题: 变量的分组并求均值 [打印本页] 作者: 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;