SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 1571|回复: 2
打印 上一主题 下一主题

SAS程序去找到薪水变动从无到有的年份。

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2011-9-23 06:12:18 | 只看该作者

SAS程序去找到薪水变动从无到有的年份。

您好
我需要写各SAS程序去找到薪水变动从无到有的年份。 员工A的薪水在2009由零到100,还有员工C在2011从零到200. 我想了很久都没有一个好方法。
请好心人帮我看一下啰 谢谢!

Hi,
I need to write a SAS code to identify the year when salary changed as attachment. Any idea is appreciated. As you can see the building value in 2009 for A and 2011 for C have changed from 0 to something.

ID   Year Salary
A    2007    0.00
A    2008    0.00
A   2009   100.00
A    2010    200.00
B    2009    500.00
B    2010    700.00
B    2011    300.00
B    2012    200.00
C    2010    0.00
C    2011   200.00
C    2012    400.00
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2012-5-27 12:11:38 | 只看该作者

Re: SAS程序去找到薪水变动从无到有的年份。

[code:2czw01oi]

data ads;
input ID $ Year Salary;
retain r 0;
if id^=lag(id) then r+1;
if (r=lag(r) & salary=dif(salary) & salary^=0) then a=1;
else a=0;
cards;
A 2007 0.00
A 2008 0.00
A 2009 100.00
A 2010 200.00
B 2009 500.00
B 2010 700.00
B 2011 300.00
B 2012 200.00
C 2010 0.00
C 2011 200.00
C 2012 400.00
;

data bds;
  set ads;
  if a;
  drop r a;
run;
[/code:2czw01oi]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2012-5-29 11:43:57 | 只看该作者

Re: SAS程序去找到薪水变动从无到有的年份。

[code:3qm7e8pz]

    data ads;
    input ID $ Year Salary;
    cards;
    A 2007 0.00
    A 2008 0.00
    A 2009 100.00
    A 2010 200.00
    B 2009 500.00
    B 2010 700.00
    B 2011 300.00
    B 2012 200.00
    C 2010 0.00
    C 2011 200.00
    C 2012 400.00
    ;

run;

proc means data=ads noprint nway;
     class ID;
         var Salary;
         output  out=_change  idgroup(min(Year) out[1](Year Salary)=)/autoname;
         where   Salary>0;
run;
[/code:3qm7e8pz]
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2025-5-6 12:52 , Processed in 0.067996 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表