Anaconda 是一个包含数据科学常用包的 Python 发行版本。它基于 conda ——一个包和环境管理器——衍生而来。你将使用 conda 创建环境,以便分隔使用不同 Python 版本和不同程序包的项目。你还将使用它在环境中安装、卸载和更新包。通过使用 Anaconda,处理数据的过程将更加愉快。
Anaconda的安装
去Anaconda官网(https://www.continuum.io/downloads)下载Anaconda安装包,并执行如下命令进行安装。
PS: 国外网站如果访问不稳定,可以尝试清华大学开源镜像站: https://mirrors.tuna.tsinghua.edu.cn。
bash Anaconda3-4.4.0-Linux-x86_64.sh
Do you approve the license terms? [yes|no]
>>> yes
Anaconda3 will now be installed into this location:
/home/ubuntu/anaconda3
- Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below
[/home/ubuntu/anaconda3] >>>
Do you wish the installer to prepend the Anaconda3 install location
to PATH in your /home/ubuntu/.bashrc ? [yes|no]
>>> yes
可以使用conda list
查看你安装的内容:
zhaozhichao:~ zhaozhichao$ conda list
# packages in environment at /Users/zhaozhichao/anaconda3:
#
license 1.1 py361
alabaster 0.7.9 py36_0
anaconda custom py36_0
anaconda-client 1.6.0 py36_0
anaconda-navigator 1.4.3 py36_0
appnope 0.1.0 py36_0
appscript 1.0.1 py36_0
astroid 1.4.9 py36_0
在Mac 上,会随 Anaconda 一起安装一批应用程序:
- Anaconda Navigator,它是用于管理环境和包的 GUI
- Anaconda Prompt 终端,它可让你使用命令行界面来管理环境和包
- Spyder,它是面向科学开发的 IDE
Anaconda 的停用与启用
- 停用 Anaconda?
1.打开终端并输入:
sudo vim ~/.bashrc
在.bashrc文件末尾用#号注释掉 Anaconda3 的路径:
# added by Anaconda3 4.3.0 installer
# export PATH="/home/ubuntu/anaconda3/bin:$PATH”
3.使其立即生效,在终端执行:
source ~/.bashrc
4.关闭终端,然后再重启一个新的终端,这一步很重要,不然在原终端上还是绑定有anaconda.
- 启用 Anaconda?
1.打开终端并输入:
sudo vim ~/.bashrc
!! Mac路径为: ~/.bash_profile
在.bashrc文件末尾用添加 Anaconda3 的路径:
# added by Anaconda3 4.3.0 installer
# export PATH="/home/ubuntu/anaconda3/bin:$PATH”
3.使其立即生效,在终端执行:
source ~/.bashrc
4.关闭终端,然后再重启一个新的终端,这一步很重要,不然在原终端上还是绑定有anaconda.
Conda的环境管理
Conda的环境管理功能允许我们同时安装若干不同版本的Python,并能自由切换。对于上述安装过程,假设我们采用的是Python 2.7对应的安装包,那么Python 2.7就是默认的环境(默认名字是root,注意这个root不是超级管理员的意思)。
我们可以通过如下操作 conda create -n env_name python=3.4
,创建一个名为python34的环境,并指定Python版本是3.4。安装好后,可以使用activate
激活某个环境,例如, 使用 source activate env_name
,激活刚才安装的python34,激活后,会发现terminal输入的地方多了python34的字样,实际上,此时系统做的事情就是把默认2.7环境从PATH中去除,再把3.4对应的命令加入PATH。此时,如果输入 python -—version
可以得到Python 3.4.5 :: Anaconda 4.1.1 (64-bit)
,即系统已经切换到了3.4的环境。如果想返回默认的python 2.7环境,可以运行source deactivate env_name
。如果想删除一个以后的环境,可以使用conda env remove -n env_name
。如果忘记了环境的名称(我有时会这样),可以使用 conda env list
列出你创建的所有环境。你会看到环境的列表,而且你当前所在环境的旁边会有一个星号。
我们可以使用 conda env export > environment.yaml
将包保存为一个环境文件YAML,当我们需要创建一个具有相同的库的环境的使用,可以通过该环境文件创建环境,请使用 conda env create -f environment.yaml
。
Conda的包管理
Conda的包管理就比较好理解了,这部分功能与pip类似。例如,如果需要安装scipy
, 可以使用:conda install scipy
。conda会从从远程搜索scipy的相关信息和依赖项目。例如,scipy 依赖于numpy,一次如果你只安装 scipy,则conda还会安装 numpy。你还可以同时安装多个包。类似 conda install numpy scipy pandas
的命令会同时安装所有这些包。另外还可以通过添加版本号(例如 conda install numpy=1.10
)来指定所需的包版本。
Conda的大部分命令都很直观,要卸载安装包,可以使用 conda remove package_name
。要更新安装包,可以使用 conda update package_name
, 要更新环境中所有包,可以使用 conda update -all
。要查看已经安装的包,可以使用 conda list
, 最新版的conda是从site-packages文件夹中搜索已经安装的包,不依赖于pip,因此可以显示出通过各种方式安装的包。 最后,如果我们不知道要找的包的确切名称,可以尝试使用conda search search_term
尝试进行搜索。例如,要安装 Beatiful Soup,但是我们不清楚确切的包名称,因此可以尝试conda search beatifulsoup
。
设置国内镜像
如果需要安装很多packages,你会发现conda下载的速度经常很慢,因为Anaconda.org的服务器在国外。所幸的是,清华TUNA镜像源有Anaconda仓库的镜像,我们将其加入conda的配置即可:
conda config --add channels <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/>
, 然后需要设置搜索时显示通道地址
conda config --set show_channel_urls yes
执行完上述命令后,会生成~/.condarc
(Linux/Mac)文件,记录着我们对conda的配置,直接手动创建、编辑该文件是相同的效果。