第1步:导入必要的库
# 导入所需的库
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
第2步:加载数据集
加载数据集并将其分为特征矩阵 X 和目标变量 y。
# 加载数据集
dataset = pd.read_csv('wines.csv')
# 将数据集分为特征矩阵 X 和目标变量 y
X = dataset.iloc[:, 0:13].values
y = dataset.iloc[:, 13].values
第3步:划分训练集和测试集
将数据集划分为训练集和测试集,以便进行模型训练和评估。
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
第4步:特征标准化
对训练集和测试集进行特征标准化,以确保模型的稳定性和准确性。
# 特征标准化
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)
第5步:应用主成分分析(PCA)
使用 PCA 对特征进行降维,并提取主要成分。
# 应用 PCA
pca = PCA(n_compOnents=2)
X_train_pca = pca.fit_transform(X_train)
X_test_pca = pca.transform(X_test)
第6步:可视化主成分
通过可视化主成分,更好地理解数据的结构和分布。
# 可视化主成分
plt.figure(figsize=(8, 6))
plt.scatter(X_train_pca[:, 0], X_train_pca[:, 1], c=y_train, cmap='viridis')
plt.xlabel('Principal Component 1')
plt.ylabel('Principal Component 2')
plt.title('2 component PCA')
plt.show()