clear all clc load iris mi = min(min(X(:,2:3))); ma = max(max(X(:,2:3))); [x,y]=meshgrid(-mi:0.1:ma); m1 = [mean(X(1:50,2));mean(X(1:50,3))]; C1 = cov(X(1:50,2:3)); m2 = [mean(X(51:100,2));mean(X(51:100,3))]; C2 = cov(X(51:100,2:3)); m3 = [mean(X(101:150,2));mean(X(101:150,3))]; C3 = cov(X(101:150,2:3)); D1 = mvnpdf([x(:) y(:)],m1',C1); D1 = reshape(D1,size(x)); D2 = mvnpdf([x(:) y(:)],m2',C2); D2 = reshape(D2,size(x)); D3 = mvnpdf([x(:) y(:)],m3',C3); D3 = reshape(D3,size(x)); close all mesh(D1);hold on; mesh(D2); mesh(D3); figure, mesh(double(D2>D3)) %Calculo de la frontera de decisiŪn xx = [randnorm(m2,C2,100) randnorm(m3,C3,100)]; yy = [zeros(1,100) ones(1,100)]; figure,plotpat(xx,yy),hold on, plotbon(m2,C2,m3,C3,'b') axis([0 5 0 8]) %Apartado b) h2 = zeros(length(y), length(x)); for i = 1:50, D = mvnpdf([x(:) y(:)],X(i+50,2:3),C2); h2 = h2 + reshape(D, size(x)); mesh(h2) drawnow end h2 = h2 / 50; figure, mesh(h2); hold on, mesh(D2) h3 = zeros(length(y), length(x)); for i = 1:50, D = mvnpdf([x(:) y(:)],X(i+100,2:3),C3); h3 = h3 + reshape(D, size(x)); mesh(h3) drawnow end h3 = h3 / 50; figure, mesh(h3); hold on, mesh(D3) figure, mesh(h2), hold on, mesh(h3) figure, mesh(D2), hold on, mesh(D3)