作者west1996 ()
看板Statistics
標題Re: [程式] 抓取最後一筆資料
時間Mon May 24 21:41:44 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 sort data=test out=test_sort;
by id product date;
run;
data test1;
set test_sort;
by id product;
retain id_flag;
if first.id=1 then id_flag=0;
if last.product=1 and product='milk' then do;
id_flag=1;
output;
end;
if last.id=1 and id_flag=0 then output;
drop id_flag;
run;
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.247.100.209 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Statistics/M.1621863707.A.9CD.html
1F:推 linda841004: 謝謝您的回復,我的問題已解決~~ 05/24 22:11