如何将移位应用于Julia数据帧



在python-panda中,shift函数可以将数据帧中的行向前移动,并可能相对于原始行移动,从而计算时间序列数据的变化。Julia中的等效方法是什么?

通常使用ShiftedArrays.jl并将其应用于需要移位的列。

这里有一个小的工作示例:

using DataFrames, ShiftedArrays
df = DataFrame(a=1:3, b=4:6)
3×2 DataFrame
Row │ a      b     
│ Int64  Int64 
─────┼──────────────
1 │     1      4
2 │     2      5
3 │     3      6
transform(df, :a => lag => :lag_a)
3×3 DataFrame
Row │ a      b      lag_a   
│ Int64  Int64  Int64?  
─────┼───────────────────────
1 │     1      4  missing 
2 │     2      5        1
3 │     3      6        2

或者你可以做:

df.c = lag(df.a)

或者,领先两行:

df.c = lead(df.a, 2)

等等。

最新更新