SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

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

不明白

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2012-3-25 15:36:25 | 只看该作者

不明白

data a;
infile datalines;
input x y $ z;
datalines;
1 a 27
1 a 33
1 b 45
2 a 52
2 b 69
3 b 70
4 a 82
4 c 91
;
run;
data b;
set a;
by x y;
if first.y;
run;
proc print data=b;
run;
data a;
infile datalines;
input x y $ z;
datalines;
1 a 27
1 a 33
1 b 45
2 a 52
2 b 69
3 b 70
4 a 82
4 c 91
;
run;
data b;
set a;
by x y;
if first.y;
run;
proc print data=b;
run;
b  70这个观测怎么也会有呢?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2012-4-24 06:06:08 | 只看该作者

Re: 不明白

俺是SAS新手,说错了免罚。
data are sorted by x y, when use first.y to output observations, all obs with y firstly appearing within sorted x group will be written to data b:

1 a 27
1 a 33
1 b 45
2 a 52
2 b 69
3 b 70 (it is first time for b to appear when x=3, this is why obs 3 b 70 is reported.)
4 a 82
4 c 91

hope this helps!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2012-4-25 09:15:07 | 只看该作者

Re: 不明白

您说的非常对,今天仔细一看知道了。
记得在考试的时候,我好像没看清楚前面X的的值已经改变。
其实这道题在复习的时候碰到过。真是郁闷呐。要是这道对了,我就有90%以上了,可出来的成绩不够90%。多少有点不好听,呵呵。
最后谢谢你的回答!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-6 15:35 , Processed in 0.073492 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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