楼主: sherlockyeahh
12194 5

[问答] 运行以下R程序,出现Error in theta[, 1] : incorrect number of dimensions [推广有奖]

  • 0关注
  • 0粉丝

小学生

0%

还不是VIP/贵宾

-

威望
0
论坛币
6 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
56 点
帖子
3
精华
0
在线时间
4 小时
注册时间
2015-12-13
最后登录
2017-3-14

楼主
sherlockyeahh 发表于 2016-5-24 18:48:27 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
betabinexch0=function(theta , data)
{
  al=theta[,1]
  be=theta[,2]
  y=data[,1]
  n=data[,2]
  N=length(y)
  val=0*be;
  for (i in 1:N){
    val=val+lbeta(al+y[i],be+n[i]-y[i])
}
  val=val-sum(lbeta(al,be))
  val=val-5/2*log(al+be)
  return(val)
}
mycontour(betabinexch0,c(100,200,100,200),data)
二维码

扫码加我 拉你入群

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

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

关键词:Dimensions dimension correct correc Number

沙发
hyu9910 在职认证  发表于 2016-5-24 21:06:14
你应该可以命令行直接检查:theta[,1]

藤椅
zhou1_20 发表于 2016-5-24 21:21:55
  1. ##theta是向量
  2. betabinexch0=function(theta , data)
  3. {
  4.   al=theta[1]
  5.   be=theta[2]
  6.   y=data[1]
  7.   n=data[2]
  8.   N=length(y)
  9.   val=0*be;
  10.   for (i in 1:N){
  11.     val=val+lbeta(al+y[i],be+n[i]-y[i])
  12. }
  13.   val=val-sum(lbeta(al,be))
  14.   val=val-5/2*log(al+be)
  15.   return(val)
  16. }
  17. betabinexch0(c(2,1),c(1,2))
复制代码

板凳
sherlockyeahh 发表于 2016-5-25 11:14:30
hyu9910 发表于 2016-5-24 21:06
你应该可以命令行直接检查:theta[,1]
直接检查theta[,1]没有问题。运行betabinexch0函数都没有问题。 只要运行mycontour(betabinexch0,c(1,2,1,2),data)就出现错误。

报纸
sherlockyeahh 发表于 2016-5-25 11:31:41
zhou1_20 发表于 2016-5-24 21:21
运行betabinexch0()是没有问题的。但是运行 mycontour(betabinexch0,c(1,2,1,2),data)就会报错。mycontour()函数是LearnBayes包里带的函数。

地板
hyu9910 在职认证  发表于 2016-5-25 21:49:02
sherlockyeahh 发表于 2016-5-25 11:14
直接检查theta[,1]没有问题。运行betabinexch0函数都没有问题。 只要运行mycontour(betabinexch0,c(1,2,1 ...
如果你看不到mycontour()的源代码,或者考虑从一个mycontour()正确的例子开始,一步步改成你的目标数据,看哪里可能出错。

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 06:22