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
求高手指点!
展开
 我来答
百度网友4e1e372
2015-08-21 · TA获得超过322个赞
知道小有建树答主
回答量:140
采纳率:0%
帮助的人:98.9万
展开全部

假设数据集名为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;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式