安装sklearn
找到自己需要的库
numpy+mkl
scipy
简单的代码学习(knn 分类)
import numpy as np
from sklearn import datasets
from sklearn.cross_validation import train_test_split
from sklearn.neighbors import KNeighborsClassifier#k 近邻算法
iris = datasets.load_iris()#是一种花的数据练习集
iris_X = iris.data# 有四个方面的数据;得到的是一个矩阵,每一行代表一朵花的数据
iris_y = iris.target
print(iris_X[:2,:])
'''
[[ 5.1 3.5 1.4 0.2]
[ 4.9 3. 1.4 0.2]]
取前两朵花的数据
'''
#print(iris_y)
'''
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2]
'''
#0,1,2代表的是三种不同的花的代号,说明一共有三种
X_train,X_test,y_train,y_test = train_test_split(iris_X,iris_y,test_size = 0.3)
#找出训练集合和验证集合:通过花的四种数据来确定花的种类,其中
#训练的数据占1-test_size = 0.7
print(y_train)
'''
[0 2 0 1 2 1 2 0 2 0 0 2 2 1 1 2 2 1 0 1 2 0 1 0 1 2 2 0 0 2 0 0 0 0 2 2 1
0 1 2 2 0 0 0 1 0 0 2 2 0 2 0 2 0 2 0 1 2 1 2 0 1 1 0 2 1 0 0 1 0 1 0 2 0
2 1 1 2 2 1 0 2 1 1 0 2 0 2 1 1 1 0 1 0 1 1 1 2 2 1 1 0 0 1 1]
'''
#发现数据被打乱,体现数据的随机性训练效果更好(有70%的数据用来训练)
knn = KNeighborsClassifier()
knn.fit(X_train,y_train)
print(knn.predict(X_test))#用验证的数据来预测种类返回的
print(y_test)
'''
[1 0 2 2 2 2 0 0 2 0 2 2 2 1 2 1 0 0 2 0 1 1 2 1 1 2 2 1 1 1 0 2 2 0 1 0 1
1 0 1 0 1 2 2 1]
[1 0 2 2 2 2 0 0 2 0 2 2 2 1 2 1 0 0 2 0 1 1 2 1 1 2 2 1 1 1 0 2 2 0 1 0 1
1 0 1 0 1 2 2 1]
'''
#对比起来预测的很准确