估计R中n-1个个案的新列

时间:2019-02-15 11:53:03

标签: r time-series

我正在尝试构建用于基金分析的代码,该代码从基金在不同频率下的回报开始。我已经能够按频率(即每天,每周,每月,每季度和每年)对数据进行拆分,但是下一步对我来说并不是很有效。我已经在excel和SPSS上做过很多次,但是由于R对我来说是一种新语言,因此事实证明它具有挑战性。以下是我的数据示例:

    Date         Dat1            Dat2    
 30/06/2009     54.26          1307.16    
 31/07/2009     65.28          1425.40    
 31/08/2009     70.71          1498.97    
 30/09/2009     76.18          1552.84    
 30/10/2009     71.92          1532.74    
 30/11/2009     77.14          1559.57   

我想做的是从第二个索引开始,再增加两列,其中包含n-1个元素。因此,新列中30/06/2009的条目将为“-”和“-”,而2009年7月31日行的条目将为(65.28-54.26)/54.26和(1425.40-1307.16)的值/1307.16,依此类推,直到最后一种情况为止。但是当我运行简单的代码时
Daily$Dat1.Return <- diff(log(Daily$Dat1))我收到以下错误:

Error in `$<-.data.frame`(`*tmp*`, Dat1, value = c(-0.0616981144702153,  : 
  replacement has 2161 rows, data has 2162

如何获取所需的列?

0 个答案:

没有答案