clc;
clear all;
X0=xlsread('SVM.xlsx','B2:E19');%18*4
for i=1:3%%%训练样本的输入数据
X(:,i)=(X0(:,i)-mean(X0(:,i)))/std(X0(:,i));%%%标准化处理
end
x=X(1:9,1:3);
x=x';
y=X(10:18,1:3);
y=y';
figure;
plot3(x(1,:),x(2,:),x(3,:),'rs');
hold on;
plot3(y(1,:),y(2,:),y(3,:),'Go');
for i=1:9
A(i,:) = [-x(:,i)',-1];
end
for i=1:9
A(i+9,:) = [y(:,i)',1];
end
c = ones(18,1)*(-1);
w = linprog(zeros(3+1,1),A,c);
hold on;
[x1,y1]=meshgrid(-2:0.001:2,-2:0.001:4);
z=-(w(1)*x1+w(2)*y1+w(4))/w(3);
clear all;
X0=xlsread('SVM.xlsx','B2:E19');%18*4
for i=1:3%%%训练样本的输入数据
X(:,i)=(X0(:,i)-mean(X0(:,i)))/std(X0(:,i));%%%标准化处理
end
x=X(1:9,1:3);
x=x';
y=X(10:18,1:3);
y=y';
figure;
plot3(x(1,:),x(2,:),x(3,:),'rs');
hold on;
plot3(y(1,:),y(2,:),y(3,:),'Go');
for i=1:9
A(i,:) = [-x(:,i)',-1];
end
for i=1:9
A(i+9,:) = [y(:,i)',1];
end
c = ones(18,1)*(-1);
w = linprog(zeros(3+1,1),A,c);
hold on;
[x1,y1]=meshgrid(-2:0.001:2,-2:0.001:4);
z=-(w(1)*x1+w(2)*y1+w(4))/w(3);
surf(x1,y1,z);
结果: