📄 twopoint.m
字号:
clear,clc
%-----------参数设置---------------------------
P=0.3;%0,1两点分布随机数,1的概率
m=10000;%两点分布随机数的产生个数
n=2000;%目标值x的个数
%--------------计算目标值,画直方图--------------
x=zeros(1,n);
for i=1:n
R=binornd(1,P,1,m);%产生m个,1的概率为P的0,1两点分布
for j=1:m
x(i)=x(i)+R(j)/(2^j);%计算x,m个两个分布构造一个x
end
end
hist(x)%直方图
%-----------parzen窗函数法----------------------
%-------------设置步长,h值------------------------
xx=0:0.01:1;%步长设置为0.01
h=1/sqrt(n);%设置h
%---------------估计概率-------------------------
len=length(xx);
p=zeros(len,1);%存储xx的估计,最后估计得到点对[xx,p]
for j=1:len
fy=0;
for i=1:n
%选择正态窗函数
fy=fy+1/h*1/sqrt(2*pi)*exp(-((xx(j)-x(i))/h)^2/2);
end
p(j)=1/n*fy;%xx(j)点的估计概率p(j)
end
figure,
plot(xx,p,'r')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -