发布网友 发布时间:2022-06-28 07:56
共1个回答
热心网友 时间:2022-06-28 23:07
百度一下和容易得到拉普拉斯分布的性质
其中mu就是均值,而b是标准差除以根号2
逆累计分布函数
我们利用matlab的rand函数很容易生成(0,1)区间内均匀分布的随机数列
将(0,1)区间内均匀分布的随机数列当成是变量p,代入你累积分布函数就可以
得到符合拉普拉斯分布的随机数列。
mu=0; %均值
sigma=1; %标准差,方差的开平方
b=sigma/sqrt(2); %根据标准差求相应的b
a=rand(1,10000)-0.5; %生成(-0.5,0.5)区间内均匀分布的随机数列 (一万个数的行向量);
x=mu-b*sign(a).*log(1-2*abs(a)); %生成符合拉普拉斯分布的随机数列
我们可以用
mean(x)
std(x)
验证,均值应该接近0,标准应该接近1
hist(x,100);
还可以画出x的分布图
是符合均值为0,标准为1的拉普拉斯分布的