任何提示我如何从组中获取第 n 个元素。 SAS 4GL 是首选,SQL 也行。
从下面的交易列表中,我想为每个客户提取对应于第二个(按日期)交易的行。
输入:
输出:
上例中的客户C只有一笔交易,因此输出表中没有与他对应的行。
提前致谢!
最佳答案
使用 SAS 可以通过多种方式完成此操作。最简单的是对数据集进行排序,然后使用数据步骤输出您想要的记录。
proc sort data=have;
by Customer TransactionDate;
run;
data want(drop=counter);
set have;
by Customer TransactionDate;
retain counter;
if first.Customer then counter=1;
else counter+1;
if counter=2 then output;
run;
关于sql - 获取组中的第 n 行 - SAS/SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50329696/