基于LDA实现降维

本文介绍了如何使用Python的scikit-learn库对葡萄酒数据集进行预处理,提取特征和标签,并通过线性判别分析(LDA)将高维数据降维到二维,从而实现不同类别葡萄酒的可视化区分。通过散点图展示,读者可以直观理解各类别的分布情况。
摘要由CSDN通过智能技术生成
import pandas as pd
import numpy as np
from sklearn.datasets import load_wine
import matplotlib.pyplot as plt

wine = load_wine()

df_wine = pd.DataFrame(data=wine["data"],columns=wine["feature_names"])
# print(df_wine)
df_wine["target"] = wine["target"]
print(df_wine)

X,y = df_wine.iloc[:,0:13].values,df_wine.iloc[:,13].values # 提取前13列作为特征列,取最后一列做为标签列
print(X,y)

# 绘制LDA图像
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis as LDA
lda = LDA(n_components=2)
X_lda = lda.fit(X,y).transform(X)

for c,i,m in zip(colors, np.unique(y), markers):
    plt.scatter(X_lda[y==i, 0], X_lda[y==i, 1], c=c, marker=m)
plt.xlabel("lda1")
plt.xlabel("lda2")
plt.title("LDA photo")
plt.legend(loc="lower left")
plt.show()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值