Professional Documents
Culture Documents
LDA MATLAB Code
LDA MATLAB Code
clc
X = [2.95 6.63;2.53 7.79;3.57 5.56;3.16 5.47;2.58 4.46;2.16 6.22;3.27 3.52];
y = [1 1 1 1 2 2 2];
g = 2;
X1 = X(1:4,1:2);
X2 = X(1:3,1:2);
M1 = mean(X1);
M2 = mean(X2);
M = mean(X);
X1o = X1 - M;
X2o = X2 - M;
C1=(X1'*X1o)/size(X1,1);
C2=(X2'*X2o)/size(X2,1);
n = size(X,1);
n1 = size(X1,1);
n2 = size(X2,1);
m = [n1 n2];
for r=1:size(C1,1)
for s=1:size(C2,2)
C(r,s) = (1/n)*(m(1)*C1(r,s)+m(2)*C2(r,s));
end
end
CInv = inv(C);
p = [n1/n n2/n]
M1T= transpose(M1)
M2T= transpose(M2)
f11 = M1*CInv*x1'-0.5*M1*CInv*M1'+log(p(1))
% f11= M1*CInv*x1T-0.5*M1*CInv*M1T+log(p(1))
f21=M2*CInv*x1T-0.5*M2*CInv*M2T+log(p(2))
f12= M1*CInv*x2T-0.5*M1*CInv*M1T+log(p(1))
f22=M2*CInv*x2T-0.5*M2*CInv*M2T+log(p(2))
f13= M1*CInv*x3T-0.5*M1*CInv*M1T+log(p(1))
f23=M2*CInv*x3T-0.5*M2*CInv*M2T+log(p(2))
f14= M1*CInv*x4T-0.5*M1*CInv*M1T+log(p(1))
f24=M2*CInv*x4T-0.5*M2*CInv*M2T+log(p(2))
f15= M1*CInv*x5T-0.5*M1*CInv*M1T+log(p(1))
f25=M2*CInv*x5T-0.5*M2*CInv*M2T+log(p(2))
f16= M1*CInv*x6T-0.5*M1*CInv*M1T+log(p(1))
f26=M2*CInv*x6T-0.5*M2*CInv*M2T+log(p(2))
f17= M1*CInv*x7T-0.5*M1*CInv*M1T+log(p(1))
f27=M2*CInv*x7T-0.5*M2*CInv*M2T+log(p(2))
f18= M1*CInv*x8T-0.5*M1*CInv*M1T+log(p(1))
f28=M2*CInv*x8T-0.5*M2*CInv*M2T+log(p(2))