SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

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

请问如何定位某变量的最小值的Obs?

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2013-1-6 23:07:31 | 只看该作者

请问如何定位某变量的最小值的Obs?

大家好,我是SAS的一个小初学者,现在在工作上碰到一个问题,例子如下...

data t1;
input id $4 child_id $4 date 8.;
cards;
a01 b01 20110103
a01 b02 20110105
a01 b03 20100927
a02 b04 20120302
a02 b05 20110214
a03 b06 20120511
a03 b07 20110205
;
run;

然后
data t1;
length min_ind $1;
set t1;
如果是id列中 date 最小值的OBS, min_ind = 'Y';
希望得到的结果是:
...
a01 b03 20100927 Y
a02 b05 20110214 Y
a03 b07 20110205 Y
...

希望各位大神不吝赐教!
谢谢!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2013-1-7 17:12:25 | 只看该作者

Re: 请问如何定位某变量的最小值的Obs?

应该可以得到你要的最小值,只是把你的日期当成数值格式了
[code:e2wo0jj6]data t1;
input id $ 1-3 child_id $ 5-8 date 9-17 ;
cards;
a01 b01 20110103
a01 b02 20110105
a01 b03 20100927
a02 b04 20120302
a02 b05 20110214
a03 b06 20120511
a03 b07 20110205
;
run;
proc sort data=t1 out=t2;
by id date;
run;
data min_data;
set t2;
by id date;
if first.id then min_id="Y";
if first.id then output min_data;
run;
proc print data=min_data;
run;[/code:e2wo0jj6]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2013-1-8 21:04:45 | 只看该作者

Re: 请问如何定位某变量的最小值的Obs?

感谢。。明天回公司试试!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-3 06:06 , Processed in 0.115653 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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