机器学习--PCA算法代码实现(基于Sklearn的PCA代码实现)

1、基于Sklearn的PCA代码实现git

import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.decomposition import PCA


digits = datasets.load_digits()
X = digits.data
y = digits.target
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=666)

knn_clf = KNeighborsClassifier()
knn_clf.fit(X_train, y_train)

pca = PCA(n_components=2)
pca.fit(X)
X_reduction = pca.transform(X)

for i in range(10):
    plt.scatter(X_reduction[y==i,0], X_reduction[y==i,1], alpha=0.8)

输出结果:编程

 

 2、运行过程当中出现的问题。dom

  初次运行时出现:No module named 'sklearn.model_selection'spa

  代码提示指向:code

 

from sklearn.model_selection import train_test_split

 

  仔细查看代码,并没有问题,问题出在Sklearn的版本太低,Sklearn 0.17.1的版本(及之前)是不包含model_selection库的。component

  运行 Anaconda Prompt(编程使用Anaconda3),输入conda list 可查看各类库的版本,其中scikit-learn的版本显示为:orm

                                        

  这时就须要更新版本了,可输入:conda update scikit-learn 进行版本更新。blog

  若输入:conda update scikit-learn 报错,则可以使用:pip install -U scikit-learn 。ip

  成功安装以后运行代码,不报错,问题解决。ci

相关文章
相关标签/搜索