2

我有一个名为 AUM 的 XTS,它有 5 列

head(AUM)
             FXI.Adjusted X2823.HK.Adjusted HSCE.Adjusted X3049.HK.Adjusted HSI.Adjusted
2010-04-08     100.0000          100.0000      100.0000          100.0000     100.0000
2010-04-09     100.9009          100.9009      100.9009          100.9009     100.9009
2010-04-12     100.4474          100.6022      100.1916          100.1448     100.0890
2010-04-13     101.7668          101.8123      101.6008          101.4299     101.4111
2010-04-14     102.1177          102.3792      101.9873          101.7272     101.7813
2010-04-15     102.0445          102.1387      101.7266          101.5462     101.4893

我想计算每列的月收益。我可以通过调用为一列执行此操作,monthlyReturn(AUM[,1])但我无法计算所有五列的月度回报并返回一个多元 XTS。

我试过这个apply(AUM, 2, monthlyReturn),但我得到了错误

Error in array(r, dim = d, dimnames = if (!(is.null(n1 <- names(x[[1L]])) &  : 
  length of 'dimnames' [1] not equal to array extent

非常感谢任何帮助。提前致谢。

4

1 回答 1

1

它应该与以下功能一起使用lapply

lapply(AUM, monthlyReturn)

此命令将返回xts对象列表。

于 2012-10-26T07:06:00.777 回答