楼主: pjq521
15268 17

[问答] 用R语言做极大似然估计的时候遇到一些问题 [推广有奖]

  • 0关注
  • 2粉丝

大专生

28%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
1.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
223 点
帖子
32
精华
0
在线时间
37 小时
注册时间
2013-4-24
最后登录
2016-12-5

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
R语言数据.xls (89.5 KB) d<-read.csv(file=file.choose(),header=T)
>  s1<-d$ln人口密度
>  s2<-d$ln面积
>  x1<-d$GDP
>  x2<-d$距离
>  x3<-d$是否中心城区
> params<-c(0,0,0,0,0,0,0,0,0)
> #定义log-likelihood函数
> LL<-function(params,d)
+ {#参数"params"是一个向量.
+ #参数"d",是整理之后的数据.
+ f<-(-x4)*log(1+exp(-params[1]*(params[2]*s1+params[3]*s2+params[4]*x1+params[5]*x2+params[6]*x3-params[7]*x1+params[8]*x2+params[9]*x3)))
+ ll<-sum(log(f))
+ ll<-sum(log(f))
+ #log-likelihood函数
+ return(ll)
+ #函数是最小化一个函数的值,但我们但我们是要最大化log-
+ #likeilhood函数,所以需要在“ll”前加个“-”号。
+ }
> ##最大似然值的计算
> res<-optim(params,LL,method="BFGS",hessian=TRUE,control=list(fnscale=-1))
错误于optim(params, LL, method = "BFGS", hessian = TRUE, control = list(fnscale = -1)) :
  'vmmin'的初始值不能为无穷大
此外: 警告信息:
1: In log(f) : 产生了NaNs
2: In log(f) : 产生了NaNs
> ##参数估计
> b<-res$par
错误: 找不到对象'res'
> hhh<-res$hessian
错误: 找不到对象'res'
> ##t值的计算
> tval<-b/sqrt(-diag(solve(hhh)))
错误: 找不到对象'b'
> ##初步似然值
> L0<-colSums((-x4)*log(1+exp(-params[1]*(params[2]*s1+params[3]*s2+params[4]*x1+params[5]*x2+params[6]*x3-params[7]*x1+params[8]*x2+params[9]*x3)))
> ##最终似然值
> LL<-res$value
错误: 找不到对象'res'
> ##拟合度计算
> ##结果输出
> ##p^2的值
> cat("roh = ",(L0-LL)/L0)
错误于cat("roh = ", (L0 - LL)/L0) : 找不到对象'L0'
> ##修正的p^2值
> cat("rohbar=",(L0-(LL-length(b)))/L0)
错误于cat("rohbar=", (L0 - (LL - length(b)))/L0) : 找不到对象'L0'
> print(res)
错误于print(res) : 找不到对象'res'
> print(tval)
错误于print(tval) : 找不到对象'tval'




请问那个optim函数出错的原因是什么?还有此外: 警告信息:
1: In log(f) : 产生了NaNs
2: In log(f) : 产生了NaNs
这是什么意思

下面,有我改过的代码,现在把数据奉上


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:极大似然估计 似然估计 极大似然 R语言 Likelihood 语言

沙发
qoiqpwqr 发表于 2013-5-25 22:58:38 |只看作者 |坛友微信交流群
发程序代码最好用“代码”功能,那样比较清楚。

使用道具

藤椅
qoiqpwqr 发表于 2013-5-25 23:00:59 |只看作者 |坛友微信交流群
你的LL函数里面的x4是什么?

把数据放上来看看。

使用道具

板凳
pjq521 发表于 2013-5-26 15:25:53 |只看作者 |坛友微信交流群
qoiqpwqr 发表于 2013-5-25 23:00
你的LL函数里面的x4是什么?

把数据放上来看看。
  1. >  d<-read.csv(file=file.choose(),header=T)
  2. >  s1<-d$ln人口密度
  3. >  s2<-d$ln面积
  4. >  x1<-d$GDP
  5. >  x2<-d$距离
  6. >  x3<-d$是否中心城区
  7. >  x4<-d$区外总出行
  8. >  x5<-d$区外不出行

  9. >params<-c(0,0,0,0,0,0,0,0,0)
  10. > #定义log-likelihood函数
  11. > LL<-function(params,d)
  12. + {#参数"params"是一个向量.
  13. + #参数"d",是整理之后的数据.
  14. + f<-(x4*ln(1+exp(-params[1]*(params[2]*s1+params[3]*s2+params[4]*x1+params[5]*x2+params[6]*x3-params[7]*x1-params[8]*x2-params[9]*x3))+x5*log(1+exp(params[1]*(params[2]*s1+params[3]*s2+params[4]*x1+params[]*x2+params[6]*x3-params[7]*x1-params[8]*x2-params[9]*x3)))
  15. +ll<-sum(-f)
  16. + #log-likelihood函数
  17. + return(ll)
  18. + }
  19. >##最大似然值的计算
  20. >res<-optim(params,LL,method="BFGS",hessian=TRUE,control=list(fnscale=-1))
  21. >##参数估计
  22. >b<-res$par
  23. >hhh<-res$hessian
  24. >##t值的计算
  25. >tval<-b/sqrt(-diag(solve(hhh)))
  26. >##初步似然值
  27. >L0<-colSums((-x4)*log(1+exp(-params[1]*(params[2]*s1+params[3]*s2+params[4]*x1+params[5]*x2+params[6]*x3-params[7]*x1-params[8]*x2-params[9]*x3)))
  28. >##最终似然值
  29. >LL<-res$value
  30. >##拟合度计算
  31. >##结果输出
  32. >##p^2的值
  33. >cat("roh = ",(L0-LL)/L0)
  34. >##修正的p^2值
  35. >cat("rohbar=",(L0-(LL-length(b)))/L0)
  36. >print(res)
  37. >print(tval)
复制代码
上面是我的代码

使用道具

报纸
pjq521 发表于 2013-5-26 15:31:59 |只看作者 |坛友微信交流群
qoiqpwqr 发表于 2013-5-25 23:00
你的LL函数里面的x4是什么?

把数据放上来看看。
数据已经发了,能麻烦帮我看看么

使用道具

地板
qoiqpwqr 发表于 2013-5-26 20:12:35 |只看作者 |坛友微信交流群
区外不出行是哪个变量?

使用道具

7
pjq521 发表于 2013-5-26 20:38:13 |只看作者 |坛友微信交流群
qoiqpwqr 发表于 2013-5-26 20:12
区外不出行是哪个变量?
是x5 啊

使用道具

8
pjq521 发表于 2013-5-26 20:40:44 |只看作者 |坛友微信交流群
pjq521 发表于 2013-5-26 20:38
是x5 啊
额,我已经弄出来了,谢谢啊

使用道具

9
540664913 发表于 2014-4-13 16:37:50 |只看作者 |坛友微信交流群
pjq521 发表于 2013-5-26 15:25
上面是我的代码
我也碰到同样的问题了,你是怎么解决的?

使用道具

10
bigbigsea 发表于 2014-6-5 10:43:48 |只看作者 |坛友微信交流群
楼上的都是怎么解决的,我也碰到了这样的问题。

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-20 09:22