SAS中文论坛

标题: 求助:一列观测的循环? [打印本页]

作者: shiyiming    时间: 2009-3-19 21:28
标题: 求助:一列观测的循环?
求助:   一列观测的循环?

举列有一数据集,XH为序号:  
DATA aa;
INPUT XH Y;
cards;
1 10
2 11
3 12
4 13
5 14
6 15
7 16
8 17
;
RUN;

怎样将数据集a中的y每4个观测放一行,既生成下列2种形式:
1、循环形式
xh y1 y2 y3 y4
4  10 11 12 13
5  11 12 13 14
6  12 13 14 15
7  13 14 15 16
8  14 15 16 17

2、间隔形式
xh  y1 y2 y3 y4
4   10 11 12 13
8   14 15 16 17


谢谢!!
作者: shiyiming    时间: 2009-3-19 22:42
标题: Re: 求助:一列观测的循环?
[code:s8wtvsw3]DATA aa;
     INPUT XH Y;
     cards;
     1 10
     2 11
     3 12
     4 13
     5 14
     6 15
     7 16
     8 17
     ;
RUN; [/code:s8wtvsw3]
[code:s8wtvsw3]data b;
     set aa;
     y1=lag3(y);
     y2=lag2(y);
     y3=lag1(y);
     y4=y;
     if _n_>=4 ;
    drop y;
run;[/code:s8wtvsw3]

[code:s8wtvsw3]data c;
     set aa;
     y1=lag3(y);
     y2=lag2(y);
     y3=lag1(y);
     y4=y;
     drop y;
     if ^mod(_n_,4) then output;
run;[/code:s8wtvsw3]
作者: shiyiming    时间: 2009-3-21 17:10
标题: Re: 求助:一列观测的循环?
谢谢!!
又学了一招!!
作者: shiyiming    时间: 2009-3-21 18:32
标题: Re: 求助:一列观测的循环?
DATA aa;
INPUT XH y1;
INPUT XH y2;
INPUT XH y3;
INPUT XH y4;
cards;
1 10
2 11
3 12
4 13
5 14
6 15
7 16
8 17
;
RUN;




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