楼主: mangran
5133 5

请教这个code错在哪里,感激不尽!! [推广有奖]

  • 0关注
  • 0粉丝

初中生

0%

还不是VIP/贵宾

-

威望
0
论坛币
67 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
183 点
帖子
12
精华
0
在线时间
0 小时
注册时间
2009-2-3
最后登录
2011-10-7

楼主
mangran 发表于 2009-4-20 15:15:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

r<-function(n, mu,sigma,alpha,w)
+ {m<-length(w)
+  w<-cumsum(w)
+  U<-runif(n)
+  W<-matrix(0,n,m)
+  W[,1]<-U<w[1]
+  for (i in 2:m)
+  {W[,i]<-(U<w)&(U>=w[i-1])
+  }
+  z<-matrix(0,n,m)
+  for(i in 1:m){
+  z[,i]<-z[,i]+W[,i]*(alpha+exp(rnorm(n,mu,sigma)))
+  }
+  }
>  n<-100
>  mu=c(0.5,1.1,2.6)
>  sigma=c(0.2,0.3,0.2)
>  alpha=c(0.4,1.2,2.4)
>  w=c(0.33,0.33,0.34)
>  r(n,mu,sigma,alpha,w)
> summary(r)
错误于object[] : 类别为'closure'的对象不可以取子集

是为了生成混合的lognormal 分布的随机数。我怎么都不知道错在哪里。而且也不知道这个错误反馈是什么意思。有人知道的话麻烦帮我看看吧,感激不尽!!!

二维码

扫码加我 拉你入群

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

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

关键词:code 感激不尽 COD ODE 请教 code 感激不尽

回帖推荐

lanzai 发表于4楼  查看完整内容

alpha+exp(rnorm(n,mu,sigma))第一项一维,而后一项多维。维数不同不能相加。

ruiqwy 发表于2楼  查看完整内容

问题应该出在W上。要生成对数正态,可以使用rlnorm()在此基础上生成混合的,比你的这样编程简单多了!

本帖被以下文库推荐

沙发
ruiqwy 发表于 2009-4-20 18:50:00
问题应该出在W上。
要生成对数正态,可以使用rlnorm()
在此基础上生成混合的,比你的这样编程简单多了!
R is the second language for me!Using R is standing on the shoulders of giants!   Let\'s use R together!

藤椅
mangran 发表于 2009-4-20 18:55:00
可是这是三系数的lognormal阿,还有alpha

板凳
lanzai 发表于 2009-4-20 22:41:00

[建议]

alpha+exp(rnorm(n,mu,sigma))

第一项一维,而后一项多维。维数不同不能相加。

报纸
mangran 发表于 2009-4-21 03:55:00
以下是引用ruiqwy在2009-4-20 18:50:00的发言:
问题应该出在W上。
要生成对数正态,可以使用rlnorm()
在此基础上生成混合的,比你的这样编程简单多了!

alpha好像是没有关系,anyways,谢谢啦!

地板
mangran 发表于 2009-4-21 03:55:00
以下是引用lanzai在2009-4-20 22:41:00的发言:

alpha+exp(rnorm(n,mu,sigma))

第一项一维,而后一项多维。维数不同不能相加。

谢谢

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-24 18:46