一、矩估计、极大似然估计、拟合、对数正态分布

##导入数据
setwd("C:/Users/chang/Documents/SRM-PA/R简介/上课练习数据集")
healthexpend <- read.csv(file="HealthExpend.csv",header=T)
##取其中EXPENDOP>0的数据,记为EXPENDOP
attach(healthexpend)
EXPENDOP<- healthexpend$EXPENDOP[EXPENDOP>0]
EXPENDOP
summary(EXPENDOP)
##做频数直方图
hist(EXPENDOP,freq=T,breaks=10,xlim=c(0,70000))

矩估计(公式求解)

n <- length(EXPENDOP)
m <- mean(EXPENDOP)
v <- var(EXPENDOP)*(n-1)/n # 注意!
sigma1 <- (log(1+(v/(m^2))))^0.5
m1 <- log(m)-1/2*(sigma1^2)
m1;sigma1
## 矩估计(牛顿法)
Newtons <- function(fun,x,ep=1e-2,it_max=100000){index <- 0;k <- 1while(k<=it_max){x1 <- x;obj <- fun(x)x <- x-solve(obj$J,obj$f)times <- sqrt((x-x1)%*%(x-x1))if(times < ep){index <- 1;break}k <- k+1}obj <- fun(x)list(root=x,it=k,index=index,FunVal=obj$f)
}
fun <- function(p){n <- length(EXPENDOP)A1 <- mean(EXPENDOP);M1 <- (n-1)/n*var(EXPENDOP)f <- c(exp(p[1]+p[2]/2)-A1,exp(2*p[1]+p[2])*(exp(p[2])-1)-M1)J <- matrix(c(exp(p[1]+p[2]/2),exp(p[1]+p[2]/2)/2,2*(exp(p[2])-1)*exp(2*p[1]+p[2]),2*exp(2*p[1]+2*p[2])-exp(2*p[1]+p[2])),ncol=2,nrow=2,byrow = T)list(f=f,J=J)
}
newton <- Newtons(fun,c(20,5))
m1a <- newton$root[1]
sigma1a <- (newton$root[2])^0.5
m1a;sigma1a

极大似然估计

fun2 <- function(params){data <- EXPENDOPf <- sum(dlnorm(data,params[1],params[2],log= TRUE))return(-f)
}
nlm1 <- nlm(fun2,c(6,1))
nlm2 <- nlminb(c(6,1),fun2,lower=c(0,0),upper=c(Inf,Inf))
m2 <- nlm2$par[1]
sigma2 <- nlm2$par[2]
m2;sigma2

直方图及对应的拟合的密度曲线

hist(EXPENDOP,freq=F,breaks=10,xlim=c(0,70000),main="直方图及拟合的密度曲线")
curve(dlnorm(x,m1,sigma1),lty=1,col="blue",add=TRUE,lwd=2)
curve(dlnorm(x,m2,sigma2),lty=2,col="red",add=TRUE,lwd=2)
legend("topright",cex=0.6,c("矩估计","极大似然估  计"),col=c("blue","red"),lty=c(1,2),lwd=c(2,2))

经验分布函数及拟合的分布函数

plot(ecdf(EXPENDOP),verticals=TRUE,do.p=FALSE,xlab="EXPENDOP",main="经验分布函数图像",ylab="分布函数",xlim=c(0,70000))
curve(plnorm(x,m1,sigma1),lty=1,col="blue",add=TRUE,lwd=2)
curve(plnorm(x,m2,sigma2),lty=2,col="red",add=TRUE,lwd=2)
legend("bottomright",inset=0.04,cex=0.6,c("矩估计","极大似然估计"),col=c("blue","red"),lty=c(1,2),lwd=c(2,2))

二、题目要求

分别用泊松和负二项分布拟合所给保单赔款次数分布,参数估计方法采用MLE,然后计算泊松分布与负二项分布拟合的保单数,并将两种分布拟合的保单数放在原数据的后两列,将上述表格以CSV表格形式输出。

data1 <- read.csv(choose.files(), header=T)##nlminb练习.csv
fix(data)# 直接手动改数据
n <- as.numeric(data1[1:7,1])#索赔次数,转变成数值型
m <- data1[1:7,2] #保单数
x <- c()##经验数据
for (i in 0:6){x <- append(x,rep(i,m[i+1]))
}

1 、负二项分布

sumlnb <- function(data,parm){sumL <- sum(log(dnbinom(data,size=parm[1],prob=parm[2])))return(-sumL)
}#似然函数
parm0 <- c(3,0.8)#初始参数
best_MLEnb <- nlminb(start=parm0,objective=sumlnb,data=x)##最大化似然函数
best_parmnb <- best_MLEnb$par
best_parmnb#参数估计结果MLEnb <- round(dnbinom(n,size=best_parmnb[1],prob=best_parmnb[2])*100000,0)

2、泊松分布

sumlpoi<- function(data,parm){sumL <- sum(log(dpois(data,lambda=parm)))return(-sumL)
}
parm1 <- 3
best_MLEpoi <- nlminb(start=parm1,objective=sumlpoi,data=x)
best_parmpoi <- best_MLEpoi$par
best_parmpoiMLEpoi <- round((dpois(n,lambda=best_parmpoi))*100000,0)

结果输出

nlminb_result <- data.frame("赔款次数"=n, "保单数"=m, "负二项分布拟合结果"=MLEnb, "泊松分布拟合结果"=MLEpoi)
nlminb_result
write.csv(nlminb_result, "nlminb_result.csv")

R语言作业一:矩估计、极大似然估计、拟合、对数正态分布、泊松分布、负二项分布相关推荐

  1. R语言-回归系数的极大似然估计

    老师要求我们对回归方程中的回归系数进行极大似然估计,回归方程如下: 计算步骤如下: 步骤一:写出似然函数log(β),其中的β为(β0,β1,β2)t(β_0, β_1, β_2)^t(β0​,β1​ ...

  2. 机器学习笔记1.矩估计、极大似然估计。

    1.矩估计 1.1矩估计思想: 矩估计是基于一种简单的"替换"思想,即用样本矩估计总体矩 1.2矩估计理论: 矩估计的理论依据就是基于大数定律的,大数定律语言化表述为:当总体的k阶 ...

  3. 统计学笔记1:截尾分布的矩估计与极大似然估计

    截尾分布的矩估计与极大似然估计 在参数估计中,我们通常喜欢用极大似然估计来估计一个参数,这样估计的参数通常具有良好的性质,但有时其并不那么容易求解.在参数估计中,矩估计的计算方法较为简易,但其结果的偏 ...

  4. 贝叶斯网专题11:参数学习之极大似然估计

    第一部分:贝叶斯网基础 1.1 信息论基础 1.2 贝叶斯网基本概念 1.3 变量独立性的图论分析 第二部分:贝叶斯网推理 2.1 概率推理中的变量消元方法 2.2 团树传播算法 2.3 近似推理 2 ...

  5. 似然函数的意义与极大似然估计

    什么是概率? 简单来说,概率是一个函数,定义域是样本空间,满足非负性,规范性,可列可加性. 严格的公理化定义如下: 概率可以做什么?统计又可以做什么? 什么是先验概率,后验概率,似然? 先验概率:根据 ...

  6. 一文看懂 “极大似然估计” 与 “最大后验估计” —— 极大似然估计篇

    参考: 唐宇迪<人工智能数学基础>第8章 Richard O. Duda <模式分类>第三章 白板机器学习 P2 - 频率派 vs 贝叶斯派 频率学派还是贝叶斯学派?聊一聊机器 ...

  7. 极大似然估计,最大后验估计的区别

    最近机器学习课程推出了比较细致的作业,让我得已有机会学习的机会 1,通过学习理解,极大似然估计是在"模型已知,参数未知"的情况下,利用采样得到的数据(即类似对现实中的一些数据进行人 ...

  8. 基于接收信号强度(RSS)的室内定位/无线传感器网络定位——极大似然估计ML/最小二乘估计WLS

    基于接收信号强度(RSS)的室内定位/无线传感器网络定位--极大似然估计ML/最小二乘估计WLS 原创不易,路过的各位大佬请点个赞 针对AOA,TOA,TDOA,RSS等室内定位.导航的探讨.技术支持 ...

  9. 基于到达时间(TOA)的室内定位(/无线传感器网络定位)——极大似然估计ML

    基于到达时间(TOA)的室内定位(/无线传感器网络定位)--极大似然估计ML 原创不易,路过的各位大佬请点个赞 针对AOA,TOA,TDOA,RSS等室内定位.导航的探讨.技术支持.==代码(有偿)= ...

最新文章

  1. 愿疫情早日过去,向那些在疫情战斗中牺牲的战士致敬
  2. listview 重复动画效果
  3. USACO network of school 强连通分量
  4. Linux cached过高问题
  5. BZOJ 4242 水壶(BFS建图+最小生成树+树上倍增)
  6. 共享单车再涨价,真要骑不起了!
  7. String与StringBuilder区别总结
  8. 4)Thymeleaf th:each 循环迭代与 th:if、th:switch 条件判断
  9. 破解WIFI密码之密码字典
  10. mysql数据库压缩_Mysql压缩解决方案
  11. ERROR 1356 (HY000): View 'information_schema. SCHEMATA'
  12. Blue Screen Of Death ( BSOD ) 错误信息解析解释
  13. Stay hungry. Stay foolish.
  14. 3大场景、4款新品公开亮相:「低速智能驾驶」新赛道惹关注
  15. 四舍六入五成双的意思
  16. C语言对称矩阵的判定
  17. 清明时节——《荒原的呼唤》选载之三
  18. html table文字竖,表格里的文字怎么竖排
  19. 最美情侣怎么用计算机,最美情侣参赛宣言
  20. 你应该在你的域名中使用www吗?

热门文章

  1. 跨专业计算机研究生如何毕业论文,跨专业考研论文要求
  2. e会学计算机课后作业答案,大学语文网课答案e会学
  3. 【GA MTSP】基于matlab GUI遗传算法求解多旅行商问题(多起点不同终点)【含Matlab源码 935期】
  4. 智能切换微信群活码二维码创建教程
  5. 春招大厂上岸学长带你有效春招找工作
  6. latex审阅版添加行号,遇见公式就缺失行号
  7. 国企计算机技术岗都干什么,大家听说的国企技术岗都是什么样子的?
  8. html5批量修改本地文件名,文件名批量更名技巧;将文件夹名添加到文件名上-批量修改文件名...
  9. 米转经纬度_经纬度换算米(经纬度精度换算米数)
  10. markdown 目录一键生成和转为 word 格式