📄 parzenwindowdensityestimator.m
字号:
function [estimatedDensity] = parzenWindowDensityEstimator(trainingData,testingData,windowWidth);
[m,n]=size(trainingData);
trainingdata=trainingData(1:m,1:n-1);
numoffeature=n-1;
[p,q]=size(testingData);
testingdata=testingData(1:p,1:q-1);
%Class=trainingData(:,end);
trainingdataofclass1=trainingdata(find(trainingData(:,3)==0),1:2);
trainingdataofclass2=trainingdata(find(trainingData(:,3)==1),1:2);
[m1,m2]=size(trainingdataofclass1);
[n1,n2]=size(trainingdataofclass2);
varofclass1=zeros(2,2);
varofclass2=zeros(2,2);
for i=1:2
varofclass1(i,i)=var(trainingdataofclass1(:,i));
varofclass2(i,i)=var(trainingdataofclass2(:,i));
end
estimatedDensity=zeros(p,2);
for i=1:p
x=testingdata(i,1:2)
xM=ones(m1,1)*x;
xN=xM-trainingdataofclass1;
for j=1:2
xN(abs(xN(:,j))>windowWidth, j) = 1000000;
end
estimatedDensity(i,1)=mean((1/(windowWidth^2))*mvnpdf((xN/windowWidth),zeros(1,2),varofclass1));
end
for i=1:p
x=testingdata(i,1:2);
xM=ones(n1,1)*x;
xN=xM-trainingdataofclass2;
for j=1:2
xN(abs(xN(:,j))>windowWidth, j) = 1000000;
end
estimatedDensity(i,2)=mean((1/(windowWidth^2))*mvnpdf((xN/windowWidth),zeros(1,2),varofclass2));
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -