滞后/超前R中的整个数据帧

Nic*_*lia 0 r lag lead dataframe

我很难带领或滞后于整个数据帧。我能做的是通过以下尝试来移动单个列,但不能进行全部操作:

require('DataCombine')
df_l <- slide(df, Var = var1, slideBy = -1)
Run Code Online (Sandbox Code Playgroud)

使用colnames(x_ret_mon)作为Var不起作用,我被告知在数据框中找不到变量名。

这种尝试将列向右移而不是向下移:

 df_l<- dplyr::lag(df)
Run Code Online (Sandbox Code Playgroud)

这只会为滞后变量创建新变量,但是我不知道如何有效删除旧的非滞后值:

 df_l<-shift(df, n=1L, fill=NA, type=c("lead"), give.names=FALSE)
Run Code Online (Sandbox Code Playgroud)

Rub*_*ben 5

用于dplyr::mutate_all对所有列应用滞后或超前。

df = data.frame(a = 1:10, b = 21:30)
dplyr::mutate_all(df, lag)
    a  b
1  NA NA
2   1 21
3   2 22
4   3 23
5   4 24
6   5 25
7   6 26
8   7 27
9   8 28
10  9 29
Run Code Online (Sandbox Code Playgroud)