用R也能做精算——actuar包学习笔记(二)
好文章啊,推荐支持顶!(有点像自动广告机了……)
[未知用户] thx.
能否再解释一下在(三)中离散化处理的原因?用连续分布的障碍是什么?数据是不是也要再度离散化?(我说“再度”是因为你提到损失额通常已经有“离散”的特征了)
谢谢!
谢谢!
[未知用户] 这个我越俎代庖吧,把分布离散化主要是在求分布的卷积中,如果是连续的分布,那么N个随机变量之和的分布就要求N重积分,这个对于电脑来说就有点郁闷了。而如果是离散的分布,那么就可以用快速傅立叶变换来求N次卷积,速度要快很多。这就相当于把密度函数转变成直方图,只要窗宽够小,分布的还原度还是可以很高的。丁鹏也写过一个帖子:http://cos.name/cn/topic/101223。
[未知用户] 邱怡轩正解,一般对损失额度使用连续分布建模,而实际上损失额度由最小的货币单位,可以是1元也可以是100元(这个无所谓,因为在离散分布中都可以用1代表)。
[未知用户] 哦,大概明白了,多谢!
3 个月 后
关于ogive和elev,我的理解是
1)ogvie(x),x as grouped.data, with endpoints and frequencies,这样ogive(x)其实是利用x构建了一个cdf函数,只不过是阶梯状的,ff <- ogive(x)之后,用ff(y)就可算出在这样的一个cdf下的概率值
2)同样的思路,elev(x) x as claim data,用x(原始损失额)来计算指定限额下的均值,所以ff <- elev(x)之后,ff(limit)返回的就是x做为原始损失额,limit为限额的limited expectation。
实际上这是一个返回值为函数的特殊函数,也许不特殊,但我没怎么遇到过,除了ecdf。如下面这个简单的例子:
1)ogvie(x),x as grouped.data, with endpoints and frequencies,这样ogive(x)其实是利用x构建了一个cdf函数,只不过是阶梯状的,ff <- ogive(x)之后,用ff(y)就可算出在这样的一个cdf下的概率值
2)同样的思路,elev(x) x as claim data,用x(原始损失额)来计算指定限额下的均值,所以ff <- elev(x)之后,ff(limit)返回的就是x做为原始损失额,limit为限额的limited expectation。
实际上这是一个返回值为函数的特殊函数,也许不特殊,但我没怎么遇到过,除了ecdf。如下面这个简单的例子:
ww <- function(x){ xx <- function(y){ if (y < x) z <-1 else z <-0 z } xx } yy <- ww(3) yy(4)
[未知用户] 这玩意儿叫Closure:
https://github.com/hadley/devtools/wiki/Scoping
https://github.com/hadley/devtools/wiki/Scoping
[未知用户] 啊。。谢大专业哇~~接触R不久,也没什么编程基础,所以理解很浅~~@.@
[未知用户] 我不专业……倒是你点出了个重要的魔法:)