SAS中文论坛
标题:
请教一个求平均值的问题
[打印本页]
作者:
shiyiming
时间:
2009-4-6 10:50
标题:
请教一个求平均值的问题
我有一个数据集,共有5个变量,分别是(systemnumber,date,time,power,speed)。整个数据集已经sorted by date, time。
针对相同的date和time,共有79个数据,也就是说对应79个systemnumber。我现在要求再同一个date, time下,变量power,speed的平均值,也就是求和后除以79.
感觉上要先分组,每组79,然后再求平均值。
最后的表格希望是(date,time,powerave,speedave)。
弄了半天也没有弄出来。
只能出来求帮助了。
不知道这个问题的code怎么写才好。
谢谢了。
作者:
shiyiming
时间:
2009-4-6 16:44
标题:
Re: 请教一个求平均值的问题
本人初学SAS,提供一点小小的帮助
**************************************************************
data d1;
input sysnum $ date $ time $ power speed;
cards;
001 20090101 13:20:10 100 200
002 20090102 17:20:30 110 190
003 20090101 13:20:10 130 230
004 20090103 14:20:10 150 150
;
run;
data d2;
set tmp nobs=Num_obs;
poweravg=power/Num_obs;
speedavg=speed/Num_obs;
run;
proc sort data=d2;
by date time;
run;
proc tabulate data=d2;
class date time;
var poweravg speedavg;
table date*time,poweravg*sum speedavg*sum;
run;
作者:
shiyiming
时间:
2009-4-8 11:24
标题:
Re: 请教一个求平均值的问题
问题是我的数据是很多条,但是我的答案是求每79条数据的平均数。所以看起来好像应该先分组,再求平均。
还是不知道怎么解决这个问题。
非常感谢回复。
作者:
shiyiming
时间:
2009-4-8 11:32
标题:
Re: 请教一个求平均值的问题
可怜的孩子,用PROC SQL吧,这些问题都是标准的SQL问题,有标准的SOLUTION。
作者:
shiyiming
时间:
2009-4-18 11:20
标题:
Re: 请教一个求平均值的问题
maybe too late.
proc sql;
select mean(power) as PowerAvg, mean(speed) as SpeedAvg from yourData group by date,time;
quit;
or:
proc means data = yourData mean;
class date time;
var power speed;
run;
Did i catch your question?
欢迎光临 SAS中文论坛 (https://mysas.net/forum/)
Powered by Discuz! X3.2