计算流程在线性判别分析LDA原理总结文章总结了
计算类内间散度矩阵的原理是计算类内间散度矩阵
有了算法步骤和计算所需要的公式,可以实现代码:
import matplotlib
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
def LDA(X, y, nComponents):
'''
输入:X为数据集(m*n),y为label(m*1),nComponents为目标维数
输出:W 矩阵(n * nComponents)
'''
#set():剔除矩阵y里的重复元素,化为集合的形式
labels = list(set(y)) # list():将其转化为列表
xClasses = {} # 索引
for label in labels:
xClasses[label] = np.array([X[i] for i