声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: 2008057

[编程技巧] 已知概率密度函数的随机数?

[复制链接]
发表于 2012-5-18 23:18 | 显示全部楼层
回复 7 # xiezhh 的帖子

谢老师,您好!看了您的《MATLAB统计分析与应用39个案例分析》后,我在编程中碰到一个问题:
在第四章的生成任意一元分布随机数的调用命令中,在comand命令中输入如下命令:
k=-0.345119445;
a=11.67962773;
e=68.61830219;
y='(-(log(1-('num2str(k)')*(x-'num2str(e)')/('num2str(a)')))/('num2str(k)'))';
pdffun = ['1/('num2str(a)')/exp((1-('num2str(k)'))*y)*(1+exp(-y))^2'];
x = crnd(pdffun, [0 1000], 100, 1);
为什么输入后,一直显示 y='........'; 这个表达式有错呢?
希望谢老师您能帮我解答看看怎么解决这个问题呢!
先谢谢 谢老师您了!
回复 支持 反对
分享到:

使用道具 举报

发表于 2012-5-18 23:23 | 显示全部楼层
回复 13 # xiezhh 的帖子

刚刚的那个程序中,密度函数是:
f(x)=1/(a*exp((1-k)*y)*(1+exp(-y))^2)
其中,y=-1/k*ln(1-k*(x-e)/a)
发表于 2012-5-19 08:40 | 显示全部楼层
回复 7 # xiezhh 的帖子

谢老师,您好!我注意到,' num2str(k) ' 在引号的左右两侧是有空格的,修改后,产生的数怎么会是 复数呢?结果居然为 54.567865+0.5655785 i 之类的数!我表示很不解!
希望谢老师能帮忙解答一下!谢谢了!
发表于 2012-11-4 17:40 | 显示全部楼层
您好谢老师:
    我想问一下如果想生成服从二元函数的随机数,能否用您给出的函数,最简单的如联合分布为二元正态分布。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-16 02:58 , Processed in 0.072715 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表