SAS 分组排序后编号,取出每一组编号最大值
SAS数据集分组排序后每组编号,取出每组编号最大值;我想在数据集插入一列,对于A组的相应位置,填充为A组的个数,B组的相应位置填充为B组的个数;用SAS该如何实现呢?比如...
SAS 数据集分组排序后每组编号,取出每组编号最大值;我想在数据集插入一列,对于A组的相应位置,填充为A组的个数,B组的相应位置填充为B组的个数;用SAS该如何实现呢?
比如数据是这样的:
bl1 bl2 bl3
A 9 1
A 8 2
A 7 3
B 4 1
B 2 2
我希望得到的是这样的
bl1 bl2 bl3 j
A 9 1 3
A 8 2 3
A 7 3 3
B 4 1 2
B 2 2 2
求高手指点! 展开
比如数据是这样的:
bl1 bl2 bl3
A 9 1
A 8 2
A 7 3
B 4 1
B 2 2
我希望得到的是这样的
bl1 bl2 bl3 j
A 9 1 3
A 8 2 3
A 7 3 3
B 4 1 2
B 2 2 2
求高手指点! 展开
1个回答
展开全部
假设数据集名为datause,那么:
proc sql;
create table datause_counting as
select bl1, count(bl3) as Group_Size from datause
group by bl1;
Create table newdatause as
select a.*, b.group_size from datause a left join datause_counting b
on a.bl1=b.bl1;
quit;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询