pgm3

 #pgm3

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

from sklearn.datasets import load_iris

from sklearn.decomposition import PCA



iris = load_iris()

data = iris.data

labels = iris.target

label_names = iris.target_names



iris_df = pd.DataFrame(data, columns=iris.feature_names)



pca = PCA(n_components=2)

data_reduced = pca.fit_transform(data)



reduced_df = pd.DataFrame(data_reduced, columns=['Principal Component 1', 'Principal Component 2'])

reduced_df['Label'] = labels



plt.figure(figsize=(8, 6))

colors = ['r', 'g', 'b']


for i, label in enumerate(np.unique(labels)):

    plt.scatter(

        reduced_df[reduced_df['Label'] == label]['Principal Component 1'],

        reduced_df[reduced_df['Label'] == label]['Principal Component 2'],

        label=label_names[label],

        color=colors[i]

    )


plt.title('PCA on Iris Dataset')

plt.xlabel('Principal Component 1')

plt.ylabel('Principal Component 2')

plt.legend()

plt.grid()

plt.show()



plt.figure(figsize=(10, 6))

plt.plot(np.cumsum(pca.explained_variance_ratio_), 'bo-')

plt.xlabel('Number of Components')

plt.ylabel('Cumulative Explained Variance')

plt.title('Explained Variance vs. Number of Components')

plt.grid(True, alpha=0.3)

plt.show()


Comments

Popular posts from this blog

pgm 2

pgm5

pgm 4