数学建模社区-数学中国

标题: lag函数的运行机制 [打印本页]

作者: 建不了的模。    时间: 2014-9-25 10:14
标题: lag函数的运行机制
找了一些资料,发现lag函数的运行机制大概是这样:
) P! q# W/ M3 `1.lag(x)是一个队列(queue)函数,每次执行,从队列的起始读取数值并将该值移除出队列,队列中的剩余值上移,x的当前值进入队列末尾。因此首次执行后,lag(x)值为missing,队列中只有1个值--即x的当前值。
2 x6 T' z' r0 m0 g2.只有当lag(x)被执行后,x的当前值才会被读入队列中。因此,如果使用条件语句,不符合条件时,lag(x)不被执行,当前的x值也不会进入队列,从而不会出现在lag(x)的结果中。0 a7 m0 s* y2 F4 F* H- ^+ S
3.SAS语句内的lag函数是无关的,即使执行的是同样的lag(x)。
0 _7 f5 f& N' t4 O. B
' @% ^; d& a- rhttp://support.sas.com/documentation/cd ... 212547.htm
. ~) A% o* s$ Rhttp://support.sas.com/documentation/cd ... ect048.htm2 X) H% a$ M" W% e* n1 O! `/ ~+ T7 ^& X9 g
http://support.sas.com/forums/thread.js ... 673⶙
0 X! p7 b$ D" h: N. G3 D' L2 r  y4 \' ^4 F
& K* r: ~! H3 S, Q
输出结果:
. ^# \; u/ ]! L( B) M                          Obs    x    y1    y2    y3    z1    z2    z3    z4    z5    z6
' C1 O  ]- ?, s9 k* L1 `* m
* {# g9 ]. c: o& W& @                           1     1     .     1     1     .     .     .     .     .     .1 I, O; p# O7 x( ^0 ^1 W* M
                           2     2     1     1     2     1     .     1     1     .     1
, Y. O( h7 I  H0 l" w0 b                           3     3     2     1     3     2     2     2     2     2     .
, F3 _& p2 P+ y6 n$ S# \                           4     4     3     1     4     3     3     3     3     3     .) p1 r; `2 D' \$ I, t% r' ^6 N
                           5     5     4     1     5     4     4     4     4     4     2
. F1 Z1 Q3 |& Z% q5 Q8 Q- A9 y, K                           6     6     5     1     6     5     5     5     5     5     5
2 B3 `; L7 ^0 O- h( o
) g# e( l: f( L- w1 ]4 A! z6 V0 W7 \  B, A% l$ c  L- a

作者: ゞ_轻描丶幸福的    时间: 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