百度一下和容易得到拉普拉斯分布的性质
其中mu就是均值,而b是标准差除以根号2
逆累计分布函数
我们利用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的拉普拉斯分布的