,我有以下数据,其中居民人按年龄排序(旧到新):计算分组的行之间的最大区别
data houses;
input HouseID PersonID Age;
datalines;
1 1 25
1 2 20
2 1 32
2 2 16
2 3 14
2 4 12
3 1 44
3 2 42
3 3 10
3 4 5
;
run;
我想计算每个家庭连续岁之间的最大年龄差人。因此,这个例子将连续为住户1,2和3提供5(= 25-20),16(= 32-16)和32(= 42-10)的值。
我可以使用大量合并(即提取人员1,合并提取人员2等),但因为可以有多达20多人在一个家庭中,我正在寻找更多直接法。
只要注意开始时,OP表示应该按年龄递减。它在这里工作,因为personid似乎首先按照最老的人的顺序分配,然而实际数据可能并非如此。 – Longfish 2015-02-12 10:30:07
你是对的,我只是复制并粘贴了最初的代码。我将编辑解决方案,谢谢! – Reeza 2015-02-12 14:37:09