假设具有以下内容:
ID Rep Year 0001 exA 2015 0001 exA 2015 0002 exA 2015 0002 exB 2015 0002 exA 2015 0002 exC 2015 0003 exC 2016 0003 exA 2016 0003 exD 2016 0003 exA 2016 ..... ... ....
是否有一种方法可以根据Rep列中exA的外观以及其他ex*来对ID进行子集设置?这只适用于2015年。不应提取只有exA的ID 0001。标准是存在exA(强制性(,但也存在其他ex*
期望输出:
ID Rep Year 0002 exA 2015 0002 exB 2015 0002 exA 2015 0002 exC 2015
试试这个
data have;
input ID $ Rep $ Year;
datalines;
0001 exA 2015
0001 exA 2015
0002 exA 2015
0002 exB 2015
0002 exA 2015
0002 exC 2015
0003 exC 2016
0003 exA 2016
0003 exD 2016
0003 exA 2016
;
proc sql;
create table want as
select * from have
where year = 2015
group by ID
having sum(Rep = 'exA') > 0
and count(distinct Rep) > 1
;
quit;