数学建模社区-数学中国
标题:
lag函数的运行机制
[打印本页]
作者:
建不了的模。
时间:
2014-9-25 10:14
标题:
lag函数的运行机制
找了一些资料,发现lag函数的运行机制大概是这样:
5 [0 e/ I5 j: ]; p! A
1.lag(x)是一个队列(queue)函数,每次执行,从队列的起始读取数值并将该值移除出队列,队列中的剩余值上移,x的当前值进入队列末尾。因此首次执行后,lag(x)值为missing,队列中只有1个值--即x的当前值。
0 L9 ]) g! d0 p6 R M
2.只有当lag(x)被执行后,x的当前值才会被读入队列中。因此,如果使用条件语句,不符合条件时,lag(x)不被执行,当前的x值也不会进入队列,从而不会出现在lag(x)的结果中。
$ b( K$ N0 ^8 U# E
3.SAS语句内的lag函数是无关的,即使执行的是同样的lag(x)。
6 J( F2 ?% b5 `* s: P, z. C
5 Y) U' s7 R9 g& M' ]) o/ W( a
http://support.sas.com/documentation/cd
... 212547.htm
& l8 h! V: |$ p' d6 v, w
http://support.sas.com/documentation/cd
... ect048.htm
* e2 F& v. m! v" a7 A" ?5 W) a
http://support.sas.com/forums/thread.js
... 673
1 l. w; h8 U: K2 y0 q: R
: O' ^& A9 r! W: J( z+ D
6 q& S; Q9 Q- G3 H$ N
输出结果:
& _- @' P; o5 ?' ]
Obs x y1 y2 y3 z1 z2 z3 z4 z5 z6
+ d$ J9 O0 d6 @- Q6 \" f! d I
& j8 T( z, j+ t& E& \; J7 U
1 1 . 1 1 . . . . . .
8 {7 |) C2 _; H9 I9 C- o
2 2 1 1 2 1 . 1 1 . 1
# z2 D4 n/ _: s
3 3 2 1 3 2 2 2 2 2 .
! z0 P* E1 n( y5 Y U! J \
4 4 3 1 4 3 3 3 3 3 .
2 `$ ]/ n0 G( p0 x' E
5 5 4 1 5 4 4 4 4 4 2
! Y9 }* I. b1 m3 f% h
6 6 5 1 6 5 5 5 5 5 5
& h+ u& Y8 W, d
0 `1 C: w2 i U
D; |. R ]; v8 g
作者:
ゞ_轻描丶幸福的
时间:
2014-9-25 15:55
这个不太懂啊 学习一下吧
作者:
深V礼
时间:
2014-9-25 17:12
干的漂亮,发帖多多,收获多多
作者:
心碎的科学
时间:
2014-9-25 22:47
kankan
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5