【发布时间】:2019-11-17 01:23:18
【问题描述】:
我想知道如何使用 SAS 代码获得此结果。 我有以下数据集:
id 2015 2016 2017
1 £10 £12 £11
2 £12 £14 £13
3 £11 £20 £10
4 £10 £13 £21
5 £15 £11 £18
我想按如下方式计算平均值:
id 2015 2016 2017
1 £10 £12 £11
2 £12 £14 £13
3 £11 £20 £10
4 £10 £13 £21
5 £15 £11 £18
Mean £11.6 £14 £14.6
我想过使用 proc 方法来做到这一点:
proc means data=work.dataset1;
output out=work.dataout mean= /autoname;
var amt;
class id;
run;
现在,我需要计算周期之间的差异。 我很难按变量分组并获得上表中的平均值。
您的帮助将不胜感激。谢谢
【问题讨论】:
-
第一张照片真的是你拥有数据的方式吗?您通常不能使用数字作为变量名。将数据存储为每年每个 id 的单独观察可能更灵活。因此,您的数据集将只有三个变量 ID、YEAR 和 COST(或任何适合您测量的名称)。然后它可以工作任意年。
-
谢谢汤姆。这是一个要分析的数据集样本,只是为了更好地解释这些步骤。我的困难在于按变量分组以获得每个时间段的平均值。现在我有多个日期用于单个帐户(id)。我正在使用滞后计算当前值与前一个值之间的差异
标签: sas