谢谢!作者: shiyiming 时间: 2008-6-17 15:59 标题: Re: 请教有趣的SAS问题(很有实用性) data new;
input sex $ 1 hire $ 2 race $ 3 sieno $ 4-7 titieno $ 8-11 +2 startdt ddmmyy6. +1 hiredte ddmmyy6.;
cards;
f1b12342345 010101 050101
m0w12342345 010101 .
f0b12342345 030101 .
m0w12342345 040101 .
m0w12342345 010101 .
m1w12352346 020101 010201
m0w12352346 020101 .
m0b12352346 010201 .
m0w12352346 050201 .
m0b12352346 010201 .
;
run;
data a(keep=si ti sd hd) ;
set new;
where hire="1";
rename sieno=si titieno=ti startdt=sd hiredte=hd;
run;
proc sql;
create table b as
select si , ti , race
from new n inner join a
on n.sieno=a.si
and n.titieno=a.ti
and hire="0"
and (n.startdt between sd and hd);
quit;
data b;
set b;
if race="w" then racew=0+1;
if race="b" then raceb=0+1;
run;
proc sql ;
create table c as
select si , ti ,sum(racew) as racew ,sum(raceb) as raceb
from b
group by si , ti;
quit;
我用了一个sql部,听说sql部效率不好,不知道有没有可以用data部写的语句,可供分享。
你看可不可以,这里默认了si,hi是主键作者: shiyiming 时间: 2008-6-19 22:33 标题: Re: 请教有趣的SAS问题(很有实用性) 确实是个很有趣的问题,但对lz的表述,我是否可以这样理解呐:
假设同一家商店对于同一职位要招两人,下面假设是A和B。A在1月份申请,5月份开始工作;B在2月份申请,同样在5月份开始工作。注意到lz说“从成功申请者开始申请到开始工作这段期间中, 在商店编号和空缺职位编号相同的情况下,参加申请的所有人都是成功申请者的竞争对手”,这样的话,是不是在分析A的时候,B是A的竞争对手,但分析B的时候,A却不是B的竞争对手。如此分析出的结果是否有意义呐?