import numpy as np import math import matplotlib.pyplot as plt x1=[0.23,1.52,0.65,0.77,1.05,1.19,0.29,0.25,0.66,0.56,0.90,0.13,-0.54,0.94,-0.21,0.05,-0.08,0.73,0.33,1.06,-0.02,0.11,0.31,0.66] y1=[2.34,2.19,1.67,1.63,1.78,2.01,2.06,2.12,2.47,1.51,1.96,1.83,1.87,2.29,1.77,2.39,1.56,1.93,2.20,2.45,1.75,1.69,2.48,1.72] x2=[1.40,1.23,2.08,1.16,1.37,1.18,1.76,1.97,2.41,2.58,2.84,1.95,1.25,1.28,1.26,2.01,2.18,1.79,1.33,1.15,1.70,1.59,2.93,1.46] y2=[1.02,0.96,0.91,1.49,0.82,0.93,1.14,1.06,0.81,1.28,1.46,1.43,0.71,1.29,1.37,0.93,1.22,1.18,0.87,0.55,0.51,0.99,0.91,0.71] w1=[[0 for i in range(2)]for i in range(24)] w2=[[0 for i in range(2)]for i in range(24)] for i in range(24): w1[i][0]=x1[i] w1[i][1]=y1[i] w2[i][0]=x2[i] w2[i][1]=y2[i] print('整合矩阵w1 w2') print(w1) print(w2) m1=np.mean(w1,0) m2=np.mean(w2,0) print('计算两类均值向量') print(m1) print(m2) s10=[0,0] s20=[0,0] s1=[[0 for i in range(2)]for j in range(2)] s2=[[0 for i in range(2)]for j in range(2)] for i in range(24): s10[0]=(w1[i][0]-m1[0]) s10[1]=(w1[i][1]-m1[1]) s11=np.mat(s10) s1+=np.mat((s11.T)*s11) s20[0]=(w2[i][0]-m2[0]) s20[1]=(w2[i][1]-m2[1]) s22=np.mat(s20) s2+=np.mat((s22.T)*s22) print('s1') print(s1) print('s2') print(s2) sw=s1+s2 print('sw') print(sw) w_new=(np.mat(sw)).I*(np.mat((m1-m2)).T) print('w_new') print(w_new) m1_new=m1*w_new m2_new=m2*w_new pw1=0.6 pw2=0.4 w0=(m1_new+m2_new)/2-math.log(pw1/pw2)/(24+24-2) print('w0') print(w0) 这是python的代码,请给每行代码注释