初学python者自学anaconda的正确姿式

事实上Anaconda 和 Jupyter notebook已成为数据分析的标准环境。html

简单来讲,Anaconda是包管理器和环境管理器,Jupyter notebook 能够将数据分析的代码、图像和文档所有组合到一个web文档中。python

接下来我详细介绍下Anaconda,并在最后给出Jupyter notebook:web

1.Anaconda是什么?windows

2.如何安装?ide

3. 如何管理包?ui

4.如何管理环境?spa

5.Jupyter notebook如何快速上手?操作系统

 

1.Anaconda是什么?3d

 anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。 [1]  由于包含了大量的科学包,Anaconda 的下载文件比较大(约 515 MB),若是只须要某些包,或者须要节省带宽或存储空间,也可使用Miniconda这个较小的发行版(仅包含conda和 Python)。code

 

你可能已经安装了 Python,那么为何还须要 Anaconda?有如下3个缘由:

1)Anaconda 附带了一大批经常使用数据科学包,它附带了 conda、Python 和 150 多个科学包及其依赖项。所以你能够当即开始处理数据。

2)管理包

Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的。

在数据分析中,你会用到不少第三方的包,而conda(包管理器)能够很好的帮助你在计算机上安装和管理这些包,包括安装、卸载和更新包。

3)管理环境

为何须要管理环境呢?

好比你在A项目中用了 Python 2,而新的项目B老大要求使用Python 3,而同时安装两个Python版本可能会形成许多混乱和错误。这时候 conda就能够帮助你为不一样的项目创建不一样的运行环境。

还有不少项目使用的包版本不一样,好比不一样的pandas版本,不可能同时安装两个 Numpy 版本,你要作的应该是,为每一个 Numpy 版本建立一个环境,而后项目的对应环境中工做。这时候conda就能够帮你作到。

2. 如何安装Anaconda?

Anaconda 可用于多个平台( Windows、Mac OS X 和 Linux)。你能够在下面地址上找到安装程序和安装说明。根据你的操做系统是32位仍是64位选择对应的版本下载。

(Anaconda已经不支持Windows XP;同时查看本身电脑是32位仍是64位,不要装错了。)

官网地址:https://www.anaconda.com/download/#windows

Anaconda 的下载文件比较大(约 500 MB),由于它附带了 Python 中最经常使用的数据科学包。

若是计算机上已经安装了 Python,安装不会对你有任何影响。实际上,脚本和程序使用的默认 Python 是 Anaconda 附带的 Python。

注意:若是你是windows 10系统,注意在安装Anaconda软件的时候,右击安装软件→选择以管理员的身份运行。

 

完成安装后,若是你是在windows上操做,按下面图打开 Anaconda Prompt (或者 Mac 下的终端),后面我会将Anaconda Prompt统一称为“终端”

<img src="https://pic3.zhimg.com/50/v2-60a3932918cd00b883b9093ffe0f70ba_hd.jpg" data-caption="" data-size="normal" data-rawwidth="248" data-rawheight="335" class="content_image" width="248">

注意:若是你是windows 10系统,按下图操做

<img src="https://pic3.zhimg.com/50/v2-9afae7b4240e4168ae0b3cb0aaff3616_hd.jpg" data-caption="" data-size="normal" data-rawwidth="451" data-rawheight="658" class="origin_image zh-lightbox-thumb" width="451" data-original="https://pic3.zhimg.com/v2-9afae7b4240e4168ae0b3cb0aaff3616_r.jpg">

若是win10系统没有按上述操做,后面会报下面的错误信息:

<img src="https://pic2.zhimg.com/50/v2-1b0040f40d884a8177c6ff684d37347a_hd.jpg" data-caption="" data-size="normal" data-rawwidth="814" data-rawheight="506" class="origin_image zh-lightbox-thumb" width="814" data-original="https://pic2.zhimg.com/v2-1b0040f40d884a8177c6ff684d37347a_r.jpg">

 

能够在终端或命令提示符中键入 conda list,以查看你安装的内容。

 若是安装后,在Anaconda Prompt中都没法使用Conda命令,解决方法在这里:https://zhuanlan.zhihu.com/p/34337889

 

为了不后面使用报错,你须要先更新下全部包。在终端输入更新全部包的命令:



conda upgrade --all

 执行了几回conda upgrade --all都是上面的状况。

在网上查询,而后执行了conda update conda

再次执行conda upgrade --all就正常了

 

 


3. 如何管理包?

安装了 Anaconda 以后,就能够很方便的管理包了(安装,卸载,更新)。

1)安装包

在终端中键入:

conda install package_name

例如,要安装 pandas,在终端中输入:

conda install pandas

你还能够同时安装多个包。相似 conda install pandas numpy 的命令会同时安装全部这些包。还能够经过添加版本号(例如 conda install numpy=1.10)来指定所需的包版本。

 


2)卸载包

在终端中键入 :

conda remove package_names

上面命令中的package_names是指你要卸载包的名称,例如你想卸载pandas包:conda remove pandas

3)更新包

在终端中键入:

conda update package_name

若是想更新环境中的全部包(这样作经常颇有用),使用:conda update --all。

4)列出已安装的包

#列出已安装的包
conda list

例如我已经成功安装了numpy和pandas这两个经常使用的包。

<img src="https://pic2.zhimg.com/50/v2-dc3296d183fd1f870635ecfea113fb1c_hd.jpg" data-caption="" data-size="normal" data-rawwidth="610" data-rawheight="388" class="origin_image zh-lightbox-thumb" width="610" data-original="https://pic2.zhimg.com/v2-dc3296d183fd1f870635ecfea113fb1c_r.jpg">

若是不知道要找的包的确切名称,能够尝试使用 conda search search_term 进行搜索。例如,我知道我想安装numpy,但我不清楚确切的包名称。我能够这样尝试:conda search num。

 

4.如何管理环境?

conda 能够为你不一样的项目创建不一样的运行环境。

0)安装nb_conda用于notebook自动关联nb_conda的环境。

<img src="https://pic4.zhimg.com/50/v2-cd28aeeaf8e69e8daba4e70009e59a62_hd.jpg" data-caption="" data-size="normal" data-rawwidth="674" data-rawheight="436" class="origin_image zh-lightbox-thumb" width="674" data-original="https://pic4.zhimg.com/v2-cd28aeeaf8e69e8daba4e70009e59a62_r.jpg">

1)建立环境

在终端中使用:

conda create -n env_name package_names

上面的命令中,env_name 是设置环境的名称(-n 是指该命令后面的env_name是你要建立环境的名称),package_names 是你要安装在建立环境中的包名称。

例如,要建立环境名称为 py3 的环境并在其中安装 numpy,在终端中输入 conda create -n py3 pandas。

<img src="https://pic3.zhimg.com/50/v2-e0dcd728b90c1f989a452abc1c644101_hd.jpg" data-caption="" data-size="normal" data-rawwidth="674" data-rawheight="227" class="origin_image zh-lightbox-thumb" width="674" data-original="https://pic3.zhimg.com/v2-e0dcd728b90c1f989a452abc1c644101_r.jpg">

2)建立环境时,能够指定要安装在环境中的 Python 版本

当你同时使用 Python 2.x 和 Python 3.x 中的代码时这颇有用。要建立具备特定 Python 版本的环境,例如建立环境名称为py3,并安装最新版本的Python3在终端中输入:

conda create -n py3 python=3 

 

或也能够这样建立环境名称为py2,并安装最新版本的Python2:

conda create -n py2 python=2

 

 

由于我作的项目不一样,有时候会用到Python2,还有时候会用到Python3。因此我在本身的计算机上建立了这两个环境,并分别取了这样的环境名称:py2,py3。这样我能够根据不一样的项目轻松使用不一样版本的python。

若是你要安装特定版本(例如 Python 3.6),请使用 conda create -n py python=3.6

 

3)进入环境

在 Windows 上,你可使用 activate my_env进入。在 OSX/Linux 上使用 source activate my_env 进入环境。

进入环境后,你会在终端提示符中看到环境名称,下面图片是我进入py3的环境(这里的py3是我上面建立环境时本身起的名称,你能够起个本身喜欢的名称)。

<img src="https://pic2.zhimg.com/50/v2-f6899ad25feedc55f65b90a2ea4170de_hd.jpg" data-caption="" data-size="normal" data-rawwidth="617" data-rawheight="115" class="origin_image zh-lightbox-thumb" width="617" data-original="https://pic2.zhimg.com/v2-f6899ad25feedc55f65b90a2ea4170de_r.jpg">

进入环境后,我能够用conda list 查看环境中默认安装的几个包:

<img src="https://pic3.zhimg.com/50/v2-11cab00b20c13cdc5af9d741854bed67_hd.jpg" data-caption="" data-size="normal" data-rawwidth="523" data-rawheight="301" class="origin_image zh-lightbox-thumb" width="523" data-original="https://pic3.zhimg.com/v2-11cab00b20c13cdc5af9d741854bed67_r.jpg">

在环境中安装包的命令与前面同样:conda install package_name。

不过,此次你安装的特定包仅在你进入环境后才可用。

 

3)离开环境

在 Windows 上,终端中输入:

deactivate

在 OSX/Linux 上 输入:

source deactivate

 

4)共享环境

共享环境很是有用,它能让其余人安装你的代码中使用的全部包,并确保这些包的版本正确。好比你开发了一个药店数据分析系统,你要提交给项目部署系统的王二狗来部署你的项目,可是王二狗并不知道你当时开发时使用的是哪一个python版本,以及使用了哪些包和包的版本。这怎么办呢?

 

你能够在你当前的环境中终端中使用 conda env export > environment.yaml 将你当前的环境保存到文件中包保存为YAML文件(包括Pyhton版本和全部包的名称)。

命令的第一部分 conda env export 用于输出环境中的全部包的名称(包括 Python 版本)。

<img src="https://pic4.zhimg.com/50/v2-b136666ef127c5b65075a485ce2b2b41_hd.jpg" data-caption="" data-size="normal" data-rawwidth="611" data-rawheight="113" class="origin_image zh-lightbox-thumb" width="611" data-original="https://pic4.zhimg.com/v2-b136666ef127c5b65075a485ce2b2b41_r.jpg">

在“notebook工做文件夹”下(及你在终端中上图的路径)能够看到导出的环境文件:

<img src="https://pic3.zhimg.com/50/v2-9eaa081fbe54c59d35c792dd968a3515_hd.jpg" data-caption="" data-size="normal" data-rawwidth="280" data-rawheight="191" class="content_image" width="280">

在 GitHub 上共享代码时,最好一样建立环境文件并将其包括在代码库中。这能让其余人更轻松地安装你的代码的全部依赖项。

导出的环境文件,在其余电脑环境中如何使用呢?

首先在conda中进入你的环境,好比activate py3

而后在使用如下命令更新你的环境:

#其中-f表示你要导出文件在本地的路径,因此/path/to/environment.yml要换成你本地的实际路径
conda env update -f=/path/to/environment.yml

 

对于不使用 conda 的用户,我一般还会使用 pip freeze > environment.txt 将一个 txt文件导出并包括在其中。

具体见这里:https://pip.pypa.io/en/stable/reference/pip_freeze/

举个例子你可能更容易理解这个使用场景:

首先,我在本身的电脑上在conda中将项目的包导出成environment.txt 文件:

<img src="https://pic1.zhimg.com/50/v2-8fbf8a5edd8d5bf1ba5cca1097098168_hd.jpg" data-caption="" data-size="normal" data-rawwidth="675" data-rawheight="120" class="origin_image zh-lightbox-thumb" width="675" data-original="https://pic1.zhimg.com/v2-8fbf8a5edd8d5bf1ba5cca1097098168_r.jpg">

而后我将该文件包含在项目的代码库中,其余项目成员即便在他的电脑上没有安装conda也可使用该文件来安装和我同样的开发环境:

他在本身的电脑上进入python命令环境,而后运行如下命令就能够安装该项目须要的包:

pip install -r /path/requirements.txt

其中/path/requirements.txt是该文件在你电脑上的实际路径。

<img src="https://pic2.zhimg.com/50/v2-9d5f722f0c60393b74730a6f2734cac6_hd.jpg" data-caption="" data-size="normal" data-rawwidth="834" data-rawheight="222" class="origin_image zh-lightbox-thumb" width="834" data-original="https://pic2.zhimg.com/v2-9d5f722f0c60393b74730a6f2734cac6_r.jpg">

5)列出环境

我有时候会忘记本身建立的环境名称,这时候用 conda env list 就能够列出你建立的全部环境。

你会看到环境的列表,并且你当前所在环境的旁边会有一个星号。默认的环境(即当你不在选定环境中时使用的环境)名为 root。

<img src="https://pic3.zhimg.com/50/v2-8f7a92b366e5eaf576ad2ee38393dcac_hd.jpg" data-caption="" data-size="normal" data-rawwidth="615" data-rawheight="146" class="origin_image zh-lightbox-thumb" width="615" data-original="https://pic3.zhimg.com/v2-8f7a92b366e5eaf576ad2ee38393dcac_r.jpg">

6)删除环境

若是你再也不使用某个环境,可使用 conda env remove -n env_name 删除指定的环境(在这里环境名为 env_name)。

 

最后从新再强调下,不要被上面的命令吓到。虽然上述命令多,给了谁都记不住的。后面你跟着我在知乎上多作项目,用的多了天然记住了。你只须要跟着上面步骤操做下,并理解了每一步是干什么的就能够了。后面遇到要作的事情,忘记了回头查这个文档就能够了。

conda的官方文档:https://conda.io/docs/user-guide/tasks/index.html

 

按照上面的步骤你亲自操做一遍后,你已经学会了Anaconda,并安装好你的数据分析Pyhton环境了,接下来你就能够愉快的使用Jupyter notebook来作数据分析了:

jupyter notebook 能够作哪些事情?​www.zhihu.com图标
相关文章
相关标签/搜索