3
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
from sklearn.decomposition import PCA
# Load the Iris dataset
iris = load_iris()
data = iris.data
labels = iris.target
label_names = iris.target_names
# Reduce dimensionality to 2 using PCA
pca = PCA(n_components=2)
reduced_data = pca.fit_transform(data)
# Create DataFrame for visualization
df_pca = pd.DataFrame(reduced_data, columns=['PC1', 'PC2'])
df_pca['Label'] = labels
# Plot PCA result
plt.figure(figsize=(8, 6))
colors = ['r', 'g', 'b']
for i, label in enumerate(np.unique(labels)):
subset = df_pca[df_pca['Label'] == label]
plt.scatter(subset['PC1'], subset['PC2'], color=colors[i],
label=label_names[label], alpha=0.7)
plt.title('PCA on Iris Dataset')
plt.xlabel('Principal Component 1')
plt.ylabel('Principal Component 2')
plt.legend()
plt.grid(True)
plt.tight_layout()
plt.show()
Comments
Post a Comment