在MATLAB中如何生成已知均值和方差的服从拉普拉斯分布的随机数呢?
来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/08/26 20:11:47
在MATLAB中如何生成已知均值和方差的服从拉普拉斯分布的随机数呢?
I need 拉普拉斯的随机数~
I need 拉普拉斯的随机数~
百度一下和容易得到拉普拉斯分布的性质
其中mu就是均值,而b是标准差除以根号2
逆累计分布函数![](http://img.wesiedu.com/upload/b/11/b11a0ed8a30cbec831f01edcba5360a0.jpg)
我们利用matlab的rand函数很容易生成(0,1)区间内均匀分布的随机数列将(0,1)区间内均匀分布的随机数列当成是变量p,代入你累积分布函数就可以得到符合拉普拉斯分布的随机数列.
mu=0; %均值sigma=1; %标准差,方差的开平方b=sigma/sqrt(2); %根据标准差求相应的ba=rand(1,10000)-0.5; %生成(-0.5,0.5)区间内均匀分布的随机数列 (一万个数的行向量);x=mu-b*sign(a).*log(1-2*abs(a)); %生成符合拉普拉斯分布的随机数列
我们可以用
mean(x)std(x)
验证,均值应该接近0,标准应该接近1hist(x,100);还可以画出x的分布图是符合均值为0,标准为1的拉普拉斯分布的![](http://img.wesiedu.com/upload/6/67/667adcf9a9514605e8b4b9e4a1bbabc8.jpg)
![](http://img.wesiedu.com/upload/b/3c/b3c7665c15d470ffc2cf415603d12261.jpg)
逆累计分布函数
![](http://img.wesiedu.com/upload/b/11/b11a0ed8a30cbec831f01edcba5360a0.jpg)
我们利用matlab的rand函数很容易生成(0,1)区间内均匀分布的随机数列将(0,1)区间内均匀分布的随机数列当成是变量p,代入你累积分布函数就可以得到符合拉普拉斯分布的随机数列.
mu=0; %均值sigma=1; %标准差,方差的开平方b=sigma/sqrt(2); %根据标准差求相应的ba=rand(1,10000)-0.5; %生成(-0.5,0.5)区间内均匀分布的随机数列 (一万个数的行向量);x=mu-b*sign(a).*log(1-2*abs(a)); %生成符合拉普拉斯分布的随机数列
我们可以用
mean(x)std(x)
验证,均值应该接近0,标准应该接近1hist(x,100);还可以画出x的分布图是符合均值为0,标准为1的拉普拉斯分布的
![](http://img.wesiedu.com/upload/6/67/667adcf9a9514605e8b4b9e4a1bbabc8.jpg)
matlab如何生成服从复高斯分布的随机数(均值为0,方差为1)
matlab 拉普拉斯 拟合 实验得到的一组数据已知是服从拉普拉斯分布的,但是不知道均值和方差,通过仿真
matlab 中已知一个分布的表达式(该分布是由正态分布和拉普拉斯分布合成的),如何得到服从该分布的随机数
matlab里如何产生方差均值已知的服从正态分布的随机数?
求联合概率分布的问题如果x1服从标准正态分布在已知x1的条件下,x2服从均值-5+2x1方差为1的正态分布如何求x1,x
matlab中怎样才能最快的求出均值和方差
利用matlab生成[-0.1,0.1]之间的服从高斯分布随机数
如何用matlab生成服从混合高斯分布的随机数
求助matlab生成服从广义指数分布的随机数 分布函数是
matlab生成一组随机数,要求均值为0.1,误差在0.2范围内的10个随机数
MATLAB中randn()生成的随机数分布范围是多少?
如何在matlab中生成负指数分布和均匀分布的随机数