Principle Component Analysis (PCA) without using function

 PCA without using function


import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.preprocessing import MinMaxScaler
import numpy as np
iris=datasets.load_iris()
data=np.array(iris.data[:10,:2])
scaler=MinMaxScaler()
scaler.fit(data)
data=scaler.transform(data)
print(data)
irisDataset=data
irisDataset_mean = irisDataset - np.mean(irisDataset , axis = 0)
cov_mat = np.cov(irisDataset_mean , rowvar = False)
eigen_values , eigen_vectors = np.linalg.eigh(cov_mat)
sorted_index = np.argsort(eigen_values)[::-1]
sorted_eigenvalue = eigen_values[sorted_index]
sorted_eigenvectors = eigen_vectors[:,sorted_index]
n_components = 2
eigenvector_subset = sorted_eigenvectors[:,0:n_components]
irisDataset_reduced = np.dot(eigenvector_subset.transpose(),irisDataset_mean.transpose()).transpose()
print(irisDataset_reduced)
plt.plot(data[:,0],data[:,1])
plt.title('Before PCA')
plt.show()
plt.plot(irisDataset_reduced[:,0],irisDataset_reduced[:,1])
plt.title('After PCA')
plt.show()






















Comments

Popular posts from this blog

Multiple inheritance,friend function and multiple file in oop(object oriented programming)

Concepts of OOP (object oriented programming)

Concepts in c++........