全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
3415 2
2009-02-11

各位大侠,

      我已知一个Lognormal分布的概率分布函数,小弟想利用matlab计算出x在0,-0.05。。。-0.45下的概率值是多少?

但是我跑出的结果却是复数形式,这是怎么回事啊??郁闷,请高手指点一二。

我的程序是:

 function y=lognormalprob1(x)
% aim to evaluate the loss prob  for lognormal(2P or 3P)分布
%pdf=@(x)(1./(sqrt(2.*pi).*b.*(x-r)).*exp(-0.5.*((log(x-r)-u)./b).^2)); % lognormal分布pdf的形式
%F(x)=1./(sqrt(2.*pi).*quad(e.^(-t.^2)./2),0,(log(x-r)-u)./b) %lognormal分布的CDF形式
%u=input('please input your mean parameter:mu=');
%b=input('please input your variable parameter:sigma=');
%r=input('please input your location parameter:r=');%r=0时,即为2参数分布

%为简单起见,这里哥们直接给出了三个参数的值。

u=-0.6051;

b=0.7017;

r=-0.6396;
%=========按照PDF来的
pdf=@(x)(1./(sqrt(2.*pi).*b.*(x-r)).*exp(-0.5.*((log(x-r)-u)./b).^2));
rt=[0
-0.05
-0.1
-0.15
-0.2
-0.25
-0.3
-0.35
-0.4
-0.45
];
n=length(rt);
for i=1:n
    y(i)=quad(pdf,-1,rt(i));
end
y

 ----------运行结果

y =

  1.0e+003 *

  Columns 1 through 6

   1.0529 + 1.4131i   1.0528 + 1.4131i   1.0528 + 1.4131i   1.0527 + 1.4131i   1.0527 + 1.4131i   1.0526 + 1.4131i

  Columns 7 through 10

   1.0525 + 1.4131i   1.0525 + 1.4131i   1.0524 + 1.4131i   1.0524 + 1.4131i

[em16]

[此贴子已经被作者于2009-2-11 20:07:30编辑过]

二维码

扫码加我 拉你入群

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

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

全部回复
2009-2-11 18:42:00
在线等,请各位大侠支招
二维码

扫码加我 拉你入群

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

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

2009-2-11 20:08:00
已解决,谢谢各位查看
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群