先导入数据包

比我是直接下好的数据,没有用网上的

import pandas as pd
from pandas import DataFrame
import matplotlib.pyplot as plt
from sklearn.decomposition import PCA
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis as LDA
data = pd.read_excel('IRIS数据集.xls',usecols =[1,2,3,4,5])#usecols这个函数可以获得你想要的数据部分

对数据进行pca  跟lda  操作

他俩都是降维

pca = PCA(n_components=2)
reduced_x = pca.fit_transform(x)
lda = LDA(n_components=2)
reduced_x_lda = lda.fit_transform(x,y)#用lda进行降维

都是把你要的东西降维为你想要的维度(我这里是二维)

降维后我们进行可视化

我这里用的是matplotlib

把降维后的二维数据存入三个列表中,把三个列表的数据进行可视化(用点)

PCA LDA 对鸢尾花降维后的结果这是lda后的结果

 

PCA LDA 对鸢尾花降维后的结果这是用pca降维后的结果

 

pca更是无监督的降维,lda是有监督的降维。lda是使投影尽可能的分开,然后让判断的数据离样本更接近。

 

。。。。。其实我也不知道对不对,感觉训练出来的结果还能接受。哈哈

 

 

相关文章: