SAS中文论坛

标题: 请问:first.变量和last.变量 [打印本页]

作者: shiyiming    时间: 2003-10-29 00:28
标题: 请问:first.变量和last.变量
数据步中first.变量 和last.变量 是什么意思?
作者: shiyiming    时间: 2003-10-29 09:00
data _1;
        do a =1 to 3;
                do b =1 to 4;
                output;
                end;
        end;
run;

data _2;
        set _1;
        [color=blue:295cc]by a;[/color:295cc]
        _a_first        =first.a;
        _a_last         =last.a;
run;

_2(obs=10):
                              Obs    a    b    _a_first    _a_last

                                1    1    1        1          0
                                2    1    2        0          0
                                3    1    3        0          0
                                4    1    4        0          1
                                5    2    1        1          0
                                6    2    2        0          0
                                7    2    3        0          0
                                8    2    4        0          1
                                9    3    1        1          0
                               10    3    2        0          0

[color=blue:295cc]按a分组,组内第一个记录 first.a=1,其他为0; 相反组内最后一个记录 last.a=1,其他为0.所以这两个系统变量是用来标记组内位置.[/color:295cc]
另外可测试一下first.b和last.b.
作者: shiyiming    时间: 2003-10-29 09:06
在 if first.class then do;......;end;这个block中放置lag,dif函数,

看看计算结果与这个放在block外面的区别。




欢迎光临 SAS中文论坛 (http://mysas.net/forum/) Powered by Discuz! X3.2