我刚开始学习R,我想用它来模拟期权定价。 我写了一个函数来创建1000个data.frames,如下所示。 我想要了解" yBaseCcy"在每个"时期" t,无论如何要这样做?
[[9]]
Period ccyPairs x K P IV yBaseCcy yTermCcy LyBaseCcy
1 1 USDZAR 13.03787 12.8 0e+00 0.0000000 0.00 0.0 0
2 2 USDZAR 12.52903 12.8 1e+06 0.2709659 21627.04 270965.9 0
[[10]]
Period ccyPairs x K P IV yBaseCcy yTermCcy LyBaseCcy
1 1 USDZAR 12.09013 12.8 0e+00 0.7098709 0 0 0
2 2 USDZAR 12.01183 12.8 1e+06 0.0000000 0 0 0
答案 0 :(得分:2)
如果所有数据帧具有相同的结构(相同的行数,每行的行数相同),那么您可以从每个数据中提取感兴趣的矢量,将它们全部加起来,然后除以总数:
Reduce("+", lapply(dat, function(x) x$yBaseCcy)) / length(dat)
# [1] 3 4
示例数据:
(dat <- list(data.frame(Period=1:2, yBaseCcy=1:2), data.frame(Period=1:2, yBaseCcy=3:4), data.frame(Period=1:2, yBaseCcy=5:6)))
# [[1]]
# Period yBaseCcy
# 1 1 1
# 2 2 2
#
# [[2]]
# Period yBaseCcy
# 1 1 3
# 2 2 4
#
# [[3]]
# Period yBaseCcy
# 1 1 5
# 2 2 6