文章目录

  • 一.Python环境搭建
  • sklearn库的安装
  • 环境变量的设置
  • 测试
  • 决策树的使用
  • 测试代码
  • 测试一
  • 测试二


因为要使用机器学习来完成一些事情,所以最近开始进行机器学习环境的搭建.
笔者是python小白,纯小白,白的不能再白.所以把自己的安装历程记录下来,供大家参考.
笔者的环境是win10+vs2019

一.Python环境搭建

vs2019支持python编程,所以按照下方图片所示即可完成

windows vs安装python第三方库 vs2019python第三方库_PowerShell


windows vs安装python第三方库 vs2019python第三方库_PowerShell_02


windows vs安装python第三方库 vs2019python第三方库_python_03


勾选点击安装即可完成python环境的搭建.

sklearn库的安装

从这里开始就是非常肉疼的地方了.

先要知道第三方库在哪里安装

windows vs安装python第三方库 vs2019python第三方库_环境变量_04

windows vs安装python第三方库 vs2019python第三方库_python_05


就会得到如图所示的界面

windows vs安装python第三方库 vs2019python第三方库_环境变量_06

这里我们需要关注两个地方:

windows vs安装python第三方库 vs2019python第三方库_python_07

windows vs安装python第三方库 vs2019python第三方库_PowerShell_08

1.你的python版本,例如我的就是3.7,64位的,这个要知道,因为后面需要用到.
2.包PyPi这个框.你可以在搜索框里直接搜索你想安装的库.不过这个东西就是最让人肉疼的.慎用

安装库的方式有两种,1.就是在搜索框里输入你想要安装的库,剩下的交给vs自己做,你最多就是提供个权限.但是安装第三方库总是会失败,所以基本上是个摆设.2.点击包(PyPI),点击概述,如图

windows vs安装python第三方库 vs2019python第三方库_环境变量_09

就会得到如图所示的画面

windows vs安装python第三方库 vs2019python第三方库_python_10

点击PowerShell,你就会得到一个蓝色的对话框,如图

windows vs安装python第三方库 vs2019python第三方库_环境变量_11

这个应该是和Linux上的终端差不多,可以接受指令.你可以用过输入指令来下载

例如 : pip install --user --index https://pypi.mirrors.ustc.edu.cn/simple/ pandas
这个pandas库也是机器学习需要的,你得安装

windows vs安装python第三方库 vs2019python第三方库_PowerShell_12


这个网址是可以更改的


http://pypi.douban.com/simple/ 豆瓣
http://mirrors.aliyun.com/pypi/simple/ 阿里
http://pypi.hustunique.com/simple/ 华中理工大学
http://pypi.sdutlinux.org/simple/ 山东理工大学
http://pypi.mirrors.ustc.edu.cn/simple/ 中国科学技术大学
https://pypi.tuna.tsinghua.edu.cn/simple 清华

你如果这样做了,你会发现还是不行.那是因为你没有添加环境变量.
你需要按照如下步骤进行操作.

环境变量的设置

找到你python安装的地方,找到scripts文件夹,复制他的路径

windows vs安装python第三方库 vs2019python第三方库_PowerShell_13

例如:C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\Scripts
你的可能在其他的地方,找到即可.
然后将它添加到环境变量中

windows vs安装python第三方库 vs2019python第三方库_vs2019_14

windows vs安装python第三方库 vs2019python第三方库_PowerShell_15


windows vs安装python第三方库 vs2019python第三方库_python_16

添加完成之后点击确定即可.这样你就能pip 第三方库了.

然后进入正题
sklearn库是在Numpy、Scipy和matplotlib的基础上开发而成的,因此在介绍sklearn的安装前,需要先安装这些依赖库。
所以你需要依次安装:Pandas库 , Numpy库(这里需要注意,不是单纯的numpy库,是numpy+mkl库) , Scipy库 , matplotlib库 , sklearn库
这里先给你提供一个网址,这是一个国外网站,你可以在上面下载到任何你想添加的第三方库.

https://www.lfd.uci.edu/~gohlke/pythonlibs/

在这个网站下载就会出现一个问题,“下载哪一个?”.这里给你解释一下

以numpy库为例,你所需要下载的不是单纯的numpy库,而是,numpy+mkl库,所以你在网站中可以看到

windows vs安装python第三方库 vs2019python第三方库_python_17

那如何来选择

上面我们提过,需要知道自己python的版本和位数,那这里就用到了

windows vs安装python第三方库 vs2019python第三方库_python_18

你在下载的时候就会发下,速度那是极其的慢,而且伴随着无限的失败.
那么这里就给你提供两种方法
1.通过vpn来进行下载
2.拿我的现成的(Python3.7 64位) , 链接:https://pan.baidu.com/s/1xWFA0lwvxM0liaQQB1fSBA 提取码:jaxn

网盘里还有需要出现图形化界面的graphviz的安装程序.(你可能需要)

下载完成之后进行安装,通过vs2019的PowerShell进行安装

你需要先知道下载在什么地方,例如我的是在 D:\火狐下载\deeplearn

这里需要解释一下,原来不是叫deeplearn的文件夹,是中文的,然后在PowerShell中就是找不到,没办法换了个英文的名称

windows vs安装python第三方库 vs2019python第三方库_环境变量_19

打开PowerShell中,你会发现你的位置并不在下载库的位置,所以需要用到 cd 命令

cd 绝对路径
如 : cd D:\火狐下载\deeplearn 你就能到达下载库位置
但笔者在操作时,绝对路径不能到达.只能一步一步走
你可以使用
cd … (注意有两个点)
来退到上一层目录,然后继续使用 cd … 直到退到C:
然后cd D: (就能进入到D盘)

windows vs安装python第三方库 vs2019python第三方库_vs2019_20


使用ls命令可以看到当前目录的文件,所需要的都在


然后按照之前的顺序进行安装


windows vs安装python第三方库 vs2019python第三方库_python_21


这个是支持Tab补全的,你输入一部分,按下tab键就能补全,然后回车安装即可

测试

from sklearn import svm
X = [[0, 0], [1, 1]]
y = [0, 1]
clf = svm.SVC()
clf.fit(X, y)  
clf.predict([[2., 2.]])

在vs2019的交互窗口中输入,如图

windows vs安装python第三方库 vs2019python第三方库_搭建sklearn环境_22

输出array([1]),就说明成了.

决策树的使用

这篇帖子中的.所以还需要安装graphviz. 之前在我的网盘里已经放了安装包(官网下载太慢了),下载安装即可.它还需添加环境变量,需要找到安装目录下的bin文件夹.例如: E:\graphviz\bin

windows vs安装python第三方库 vs2019python第三方库_PowerShell_23

复制路径将它添加到环境变量中.方法前面已经说过了.

windows vs安装python第三方库 vs2019python第三方库_环境变量_24

测试代码
测试一
#-*- coding: utf-8 -*-
from itertools import product

import numpy as np
import matplotlib.pyplot as plt

from sklearn import datasets
from sklearn.tree import DecisionTreeClassifier


# 仍然使用自带的iris数据
iris = datasets.load_iris()
X = iris.data[:, [0, 2]]
y = iris.target

# 训练模型,限制树的最大深度4
clf = DecisionTreeClassifier(max_depth=4)
#拟合模型
clf.fit(X, y)

# 画图
x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1
y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1
xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.1),
                     np.arange(y_min, y_max, 0.1))

Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])
Z = Z.reshape(xx.shape)

plt.contourf(xx, yy, Z, alpha=0.4)
plt.scatter(X[:, 0], X[:, 1], c=y, alpha=0.8)
plt.show()

运行结果:

windows vs安装python第三方库 vs2019python第三方库_环境变量_25

测试二
#-*- coding: utf-8 -*-
from itertools import product

import numpy as np
import matplotlib.pyplot as plt

from sklearn import datasets
from sklearn.tree import DecisionTreeClassifier

from IPython.display import Image
from sklearn import tree
import pydotplus
import os       
os.environ["PATH"] += os.pathsep + 'G:/program_files/graphviz/bin'

# 仍然使用自带的iris数据
iris = datasets.load_iris()
X = iris.data
y = iris.target

# 训练模型,限制树的最大深度4
clf = DecisionTreeClassifier(max_depth=4)
#拟合模型
clf.fit(X, y)

dot_data = tree.export_graphviz(clf, out_file=None,
                         feature_names=iris.feature_names,
                         class_names=iris.target_names,
                         filled=True, rounded=True,
                         special_characters=True)
graph = pydotplus.graph_from_dot_data(dot_data)
# 使用ipython的终端jupyter notebook显示。
Image(graph.create_png())
# 如果没有ipython的jupyter notebook,可以把此图写到pdf文件里,在pdf文件里查看。
graph.write_pdf("iris.pdf")

运行结果
#使用ipython的终端jupyter notebook显示。
Image(graph.create_png())
这句因为这个jupyter notebook搭建有问题,所以没有显示,但是这个大佬提供了将结果写到pdf中,照样可以测试结果

windows vs安装python第三方库 vs2019python第三方库_python_26


结果显示正常


这就说明环境搭建的很成功

因为在没有找到这段代码的时候,我用的其他的代码有一个问题

#原始DataFrame
import pandas as pd
import numpy as np
df=pd.DataFrame(np.arange(12).reshape(3,4))
#df.as_matrix() 方法已经被淘汰
df.values
x= df.iloc[:,0:3].values
print(x)

在这段代码中,这个df.as_matrix()在python3.7中已经没有了.你是调用不出来的,去查阅资料发现,这种方式已经被淘汰了,现在好像是用df.values来代替.而且笔者也测试了,确实是第二种能用.

因为之前还加了很多的其他库,像jupyter,wheel,IPython这些,都得好像也没有按照代码(Image(graph.create_png()))提示显示出来,目前还不知道是哪出了问题.