2

5 つの列を持つ AUM と呼ばれる XTS があります。

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

各列の月次収益を計算したい。呼び出して 1 つの列に対して実行できmonthlyReturn(AUM[,1])ますが、5 つの列すべての月次収益を計算して多変量 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 に答える