SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 966|回复: 2
打印 上一主题 下一主题

[求助] Proc Report 求平均值问题

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2008-5-2 10:13:35 | 只看该作者

[求助] Proc Report 求平均值问题

请高手出招:
    Report procedure 可以计算分析变量的平均,但是计算的结果是基于每组group变量值的所有分析变量的值。
现在我想计算平均基于每组group 变量值的所有“非零“分析变量的值。 不知道是不是可以用compute 来做?
比如
data a;
input region $ emp wage hrs tax;
cards;
east  1000 12 0 100
west  1001 0  7 300
south 1002 8  0 110
east  1003 0  6 200
north 1004 11 0 230
south 1005 0  8 102
east  1006 8  0 320
west  1007 6  0 210
north 1008 0  7 150
;
run;
proc report data = a nowindows headline;
        column region N PCTN emp wage hrs tax;
        define region / group;
        define PCTN / format = PERCENT10.1;
        define emp / analysis mean;
        define wage / analysis mean;
        define hrs / analysis mean;
        define tax / analysis mean;
        RBREAK AFTER / SUMMARIZE OL SKIP;
run;
现在我想计算变量wage, hrs的平均基于非零值,而emp, tax 的平均基于所有的值。
谢谢!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2008-5-2 13:12:27 | 只看该作者

Re: [求助] Proc Report 求平均值问题

最简单的方法就是中间加一步
[code:24t80t7q]data a;
set a;
if wage=0 then wage=.;
if hrs=0 then hrs=.;
run;[/code:24t80t7q]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2008-5-6 13:24:54 | 只看该作者

Re: [求助] Proc Report 求平均值问题

多谢shiyiming 老大的回复。
看来也只能这样做了,当初不这样做的
原因是dataset 是客户给的,不想改动
原来的dataset, 而如果set 给另一个
dataset ,由于数据量很大,时间花费很长。

many thanks
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-4 18:17 , Processed in 0.172657 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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