我正在处理一个包含时间序列数据的大型数据集(约 100 万个 obs)。换句话说,我的数据集id
每天都包含对唯一标识符 ( ) 的多次观察(为了提供一个简单的示例,它只是一个整数值)。例如,我的数据可能如下所示:
id var day
1 49 1
1 51 2
1 53 3
1 50 4
2 45 1
2 46 2
2 45 3
2 44 4
现在,我想计算var
连续几天之间的导数。换句话说,我想计算每个var
1 和 2 天、2 天和 3 天等之间的变化id
。因此,生成的数据集将如下所示:
id var day deriv
1 49 1 NA
1 51 2 2
1 53 3 2
1 50 4 -3
2 45 1 NA
2 46 2 1
2 45 3 -1
2 44 4 -1
我怀疑有一些非常简单的解决方案使用melt
我不知道的东西。任何帮助表示赞赏!