请选择 进入手机版 | 继续访问电脑版
楼主: 2010yangxiujuan
1886 3

SAS 根据观测组中的观测值计数,并且在最大值处断开,重新计数 [推广有奖]

  • 0关注
  • 0粉丝

大专生

81%

还不是VIP/贵宾

-

威望
0
论坛币
139 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2353 点
帖子
27
精华
0
在线时间
83 小时
注册时间
2010-5-6
最后登录
2022-5-2

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位好!

我有一个问题比较着急,就是我需要对数据进行计数 ,但是需要在每组观测值最大值处断开,重新计数 ,如下,根据前两列,得到第三列,请高手帮忙想想!多谢

id

obj

count

a

0.5

1

a

0.6

2

a

1

1

a

0.5

2

a

0.4

3

a

0.5

4

b

1.1

1

b

1.2

2

b

2.1

1

b

1.1

2

b

0.9

3


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:观测值 最大值 Count 各位好 最大值

写得真好                                                                        
                                       
                                                     
                                                     
                                             
                                                                 
                                                                                 

使用道具

data a;
infile 'F:\a.txt' delimiter='09'x;
input id $ seg;
if _n_=1 then delete;
run;

proc sql;
create table b as
select id,max(seg) as seg
from a
group by id
;
quit;

proc sql;
create table c as
select a.*,
case when a.id=b.id and a.seg=b.seg then '1' end as qujian
from a ,b
where a.id=b.id
;
quit;

data d(drop=qujian);
        set c;
        if seg=1 then do;
           num1=1;
           end;

           else do ;
                        if qujian=1 then do;
                  num1=1;
                 end;
                         else do;
                  num1+1;
                         end;
           end;
run;

使用道具

2010yangxiujuan 发表于 2014-9-25 12:54
data a;
infile 'F:\a.txt' delimiter='09'x;
input id $ seg;
a 为数据集,obj换成seg

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-28 22:32