data test; length id $16; format birth_date sample_date yymmdd10.; input ID $ birth_date :ddmmyy8. sample_date :ddmmyy8. parity time quantity wt bcs; datalines; IE121067041077 07/04/11 11/04/11 4 2 5.3 . . IE121067041077 07/04/11 12/04/11 4 1 11.9 . . IE121067041077 07/04/11 12/04/11 4 2 5.3 . . IE121067041077 07/04/11 13/04/11 4 1 11.9 . . IE121067041077 07/04/11 13/04/11 4 2 6.1 . . IE151306820735 31/01/10 26/11/10 5 1 8.7 434 . IE151306820735 31/01/10 26/11/10 5 2 1.8 434 . IE151306820735 31/01/10 27/11/10 5 1 5.3 . . IE151306820735 31/01/10 27/11/10 5 2 2 . . IE151306820735 31/01/10 28/11/10 5 1 4.5 . . IE151306820735 31/01/10 29/11/10 5 1 5 . . IE151306820735 31/01/10 29/11/10 5 2 2.5 . . ; proc sql; create table want as select distinct a.id ,a.birth_date,a.sample_date,parity,daily_quantity from test a,(select id,sample_date,sum(quantity) as daily_quantity from test group by id,sample_date) b where a.id=b.id and a.sample_date=b.sample_date; quit; proc print;run; sample_ daily_ Obs id birth_date date parity quantity 1 IE121067041077 2011-04-07 2011-04-11 4 5.3 2 IE121067041077 2011-04-07 2011-04-12 4 17.2 3 IE121067041077 2011-04-07 2011-04-13 4 18.0 4 IE151306820735 2010-01-31 2010-11-26 5 10.5 5 IE151306820735 2010-01-31 2010-11-27 5 7.3 6 IE151306820735 2010-01-31 2010-11-28 5 4.5 7 IE151306820735 2010-01-31 2010-11-29 5 7.5 Linlin
... View more