Play with PCA.
pca.py
from sklearn.datasets import load_digits
from sklearn.decomposition import PCA
import matplotlib.pyplot as plt
##Data reading
digits = load_digits()
X = digits.data
y = digits.target
target_names = digits.target_names
## PCA
pca = PCA(n_components=2)
X_r = pca.fit(X).transform(X)
## colors
colors = [plt.cm.nipy_spectral(i/10., 1) for i in range(10)]
## plot
plt.figure()
for c, target_name in zip(colors, target_names):
plt.scatter(X_r[y == target_name, 0], X_r[y == target_name, 1], c=c, label = target_name)
plt.legend()
plt.title('PCA')
plt.show()
Execution result.
reference: Scikit-learn PCA documentation Scikit-learn PCA sample The University of Tokyo Tomioka-sensei HP PFI Blog
Recommended Posts