我正在尝试复制关于非人寿保险数学文本中使用的丹麦数据集的示例图。
我想从我的数据集中创建以下新变量,以便绘制图形。我最大的挑战是如何在两个值的最大值到两个值的最小值之间将总和(sigma)与w相加。我不知道如何在R中做到这一点。猜猜我还有很多东西需要学习如何在R中进行操作。
如果有些人可以给我一些有用的提示,我将不胜感激。
下面是有问题的等式我无法替换西格玛符号所以我使用字面解释(总和)
1/λ(i)) = 1/(2m + 1) * sum Wj from {j=max(1,i−m) to min(n,i+m)} for m = 50.
答案 0 :(得分:1)
试试这个
m = 50
total = 0
for (j in seq(max(1, i-m), min(n, i+m)) {
total = total + W[j]
}
total = total / (2 * m + 1)
lambda = 1 / total
或者
m = 50
lambda = 1 / (sum(W[max(i,i-m) : min(n,i+m)]) / (2 * m + 1))