改变变量以逐年延迟

时间:2018-03-13 19:24:13

标签: r statistics

我有一个数据集,我需要在变量中测试自相关。 要做到这一点,我想首先将它滞后一段时间,以测试自相关性。 然而,由于数据是关于美国选举的,数据仅以两年为间隔,即1968年,1970年,1970年,1972年等。

据我所知,我需要以某种方式改变年份变量,以便它可以以某种方式每年运行,以便我可以将利益变量滞后一个周期/年。

我认为dplyr()在某种程度上有所帮助,但我不确定如何。

1 个答案:

答案 0 :(得分:1)

是的,dplyr有一个有用的lag功能,在这些情况下效果很好。由于您没有提供样本数据或要执行的特定测试,因此这是一个简单的示例,显示您可能采取的方法:

> df <- data.frame(year = seq(1968, 1978, 2), votes = sample(1000, 6))
> df
  year votes
1 1968   565
2 1970   703
3 1972   761
4 1974   108
5 1976   107
6 1978   449
> dplyr::mutate(df, vote_diff = votes - dplyr::lag(votes))
  year votes vote_diff
1 1968   565        NA
2 1970   703       138
3 1972   761        58
4 1974   108      -653
5 1976   107        -1
6 1978   449       342