全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
30194 15
2015-12-14
最简单的,
X1994 1995 1996 1997
2 3 4 5
那么请问X的一期滞后项是多少呢?究竟是
X-11993 1994 1995 1996
1 2 3 4
还是
X-1 1995 1996 1997 1998

3 4 5 6
啊?我的理解,一期滞后项只不过是前一期的值拿到当期适用,变量值与年份之间的对应关系应该是不变的,为甚么我看R的lag(X,1)的返回值却是将变量值提前了一期了,本来是1994年的数值跑到1993年了,这是为什么?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-12-14 22:09:03
这个白痴问题没人回答嘛,我实在是不理解啊?比如 Y[t]~X[t]+X[t-1] ,这里面就需要对 X 求滞后,也就是 lag( X, 1), 那么1995年的 Y = 1995年的 X + 1994 年的 X ,但是lag( X , 1 ) 却给出了 1996 年的 X 这是怎么回事呀?我认为应该是 lag(X, -1),但是我看的书里却是 lag(X, 1),论坛里的人也都在用 lag( X, 1 )但我怎么都想不明白,1995年对应的一期滞后应该是 1994年,那么就是前一期的被后一期适用,也就是在时间上是朝着时间增大的方向移动,故而是lag(X, -1)!!!求求解答!求解答!!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-15 00:26:01
你举的例子(Y[t]~X[t]+X[t-1])不需要用lag吧。比如你的X[t],0<=t<=10是你已有的数据,那么就不需要用lag(X,1)来求得X[t-1]的值,直接X[t-1]就可以了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-15 08:32:04
没有问题吧
> data <- data.frame(year=2001:2005, x=1:5)
> data <- within(data,{
+                lagx <- lag(x,1)
+ })
> data
  year x lagx
1 2001 1   NA
2 2002 2    1
3 2003 3    2
4 2004 4    3
5 2005 5    4
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-15 20:58:38
蓝色 发表于 2015-12-15 08:32
没有问题吧
> data  data
我按照你的试了一遍,结果显示这个:
> data
  year x lagx
1 2001 1    1
2 2002 2    2
3 2003 3    3
4 2004 4    4
5 2005 5    5
难道我们的软件不一样吗,我用的是stats里的 lag 函数,应该是默认的,我的版本是最新的,3.2.3,结果还是这个,到底怎么回事啊?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-15 21:36:32

library(dplyr)

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群