matlab如何对分布函数积分或如何对随机变量求积分?问题是matlab如何对正态分布的分布函数求给定区间的积分,或对x*f(x)的积分,其中的f(x)表示的是正态分布的密度函数,
问题描述:
matlab如何对分布函数积分或如何对随机变量求积分?
问题是matlab如何对正态分布的分布函数求给定区间的积分,或对x*f(x)的积分,其中的f(x)表示的是正态分布的密度函数,
答
>> syms sigma mu x a b;%sigma标准差 mu平均值a b积分上下限
f_x=1/sqrt(2*pi)/sigma*exp(-(x-mu)^2/2/sigma^2);
I=int(f_x,a,b)
I =
7186705221432913/36028797018963968*pi^(1/2)*2^(1/2)*erf(1/2*2^(1/2)*(b-mu)/sigma)-7186705221432913/36028797018963968*pi^(1/2)*2^(1/2)*erf(1/2*2^(1/2)*(a-mu)/sigma)
>> vpa(I,2)
ans =
.50*erf(.70*(b-1.*mu)/sigma)-.50*erf(.70*(a-1.*mu)/sigma)
>>