作者songhome (爽轰)
看板Statistics
标题Re: [程式] 抓取最後一笔资料
时间Mon May 24 20:14:11 2021
※ 引述《linda841004 (水凝结)》之铭言:
: [软体程式类别]:SAS
: [程式问题]:
: 资料处理
: [软体熟悉度]:
: 熟悉
: [问题叙述]:
: 抓取顾客购买milk的最晚的一笔资料,若无购买milk则取最晚的一笔tea资料
: http://i.imgur.com/5BxpMZp.jpg
: 想变成下图
: http://i.imgur.com/YJR7rk3.jpg
: 程式范例:
: data test;
: input id $ product $ date:date9.;
: cards;
: A milk 01Oct2021
: A tea 02Oct2021
: B tea 03Oct2021
: B tea 04Oct2021
: B tea 05Oct2021
: C tea 06Oct2021
: C milk 07Oct2021
: D milk 08Oct2021
: D milk 09Oct2021
: ;
: run;
: ----这边下面是想处理日期出现最晚的资料---但还想要依据上面的条件抓资料(出来结果也不合我意)
: proc sql;
: create table test1 as
: select distinct id,product,put(max(date),date9.) as date1
: from test
: group by id
: ;
: quit;
: 结果如下图 (结果是错的)
: http://i.imgur.com/tT6IobZ.jpg
: 还请各路大神指点!
: -----
: Sent from JPTT on my HTC_U-3u.
proc sql;
create table teast as
select distinct
id
,product
,max(date) as date1
from test
group by id
having date=max(date)
;
quit;
虽然SAMPLE资料里没有
不过要是同一天两个都有买的话会显示两笔
恐要再多一段程式去筛
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 211.18.246.105 (日本)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Statistics/M.1621858454.A.C35.html
※ 编辑: songhome (211.18.246.105 日本), 05/24/2021 20:15:55
1F:推 linda841004: 感谢回复,但您的程式无法处理【抓取购买milk的最後 05/24 20:49
2F:→ linda841004: 一笔资料,若无购买milk则抓取购买tea的最後一笔资料 05/24 20:49
3F:→ linda841004: 】 05/24 20:49
5F:推 linda841004: 上图是您程式跑出来的结果,跟我需要的不同 05/24 20:56