import numpy as nu
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.decomposition import PCA
p=PCA(n_components=2)
data=pd.read_csv('Iris.csv')
su=data
data.head()
data.isnull()
data.info()
data.unique(data['Species'])
from sklearn.preprocessing import LabelEncoder
s=LabelEncoder()
data['Species']=s.fit_transform(data['Species'])
data.describe()
k=p.fit_transform(data)
k=pd.DataFrame(k,columns=['pca1','pca2'])
k.head()
k['species']=su['Species']
k.head()
one=k[k['species']==0]
two=k[k['species']==1]
three=k[k['species']==2]
plt.scatter(one['pca1'],one['pca2'])
plt.scatter(two['pca1'],two['pca2'])
plt.scatter(three['pca1'],three['pca2'])
p2=PCA(n_components=3)
n=p2.fit_transform(data)
n=pd.DataFrame(n,columns=['pca1','pca2','pca3'])
n['species']=su['Species']
n.head()
one=n[n['species']==0]
two=n[n['species']==1]
three=n[n['species']==2]
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.scatter(one['pca1'],one['pca2'],one['pca3'],c='red',label='0')
plt.legend()
ax.scatter(two['pca1'],two['pca2'],two['pca3'],color='green',label='1')
ax.legend()
ax.scatter(three['pca1'],three['pca2'],three['pca3'],color='blue',label='2')
ax.legend()