SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 1101|回复: 4
打印 上一主题 下一主题

变量的分组并求均值

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2008-12-15 15:22:11 | 只看该作者

变量的分组并求均值

我需要对一个变量进行分组,从1开始,每10个一组,并分别求出平均数。第1-10个观测为第一组,11-20个为第二组,以此类推,并分别求均值,该如何循环呢?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2008-12-15 16:51:21 | 只看该作者

Re: 变量的分组并求均值

data ex;
do i= 1 to  N;
     do j=1 to 10
       input x @@;
   end;
end;

proc means;
...
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2008-12-15 21:12:49 | 只看该作者

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]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2008-12-15 22:22:55 | 只看该作者

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]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2008-12-16 10:30:50 | 只看该作者

Re: 变量的分组并求均值

data a;
input data;
id=_n_;
if mod(data,10)=1 then sum=0;
sum+data;
drop id;
cards;
...
...
...
;
run;
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-5 08:47 , Processed in 0.100312 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表