zoukankan      html  css  js  c++  java
  • Python Anaconda使用

    选择Python 科学计算器发行版

    Python用于科学计算的一些常用工具和库


    • IPython-增强的交互环境:支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数
    • Spyder、Wing IDE或Eclipse/Pydev:集成开发环境
    • NumPy-数学计算基础库:N维数组、线性代数计算、傅立叶变换、随机数等。
    • SciPy-数值计算库:线性代数、拟合与优化、插值、数值积分、稀疏矩阵、图像处理、统计等。
    • SymPy-符号运算
    • Pandas-数据分析库:数据导入、整理、处理、分析等。
    • matplotlib-会图库:绘制二维图形和图表
    • Chaco-交互式图表
    • OpenCV-计算机视觉库
    • TVTK-数据的三维可视化
    • Cython-Python转C的编译器:编写高效运算扩展库的首选工具
    • BioPython-生物科学

    Python科学计算发行版


    • Python(x,y)
      当前最新版本:2.7.6.1 (05/30/2014),支持Windows和Python2.7.6。
      其库索引列出了所支持的170+Python27库。
    • WinPython
      当前最新版本:2.7.6.4和3.3.5.0 (04/2014),支持Windows和Python2.7.6、3.3.5。
      其库索引列出了所支持的60+Python27库。
      其库索引列出了所支持的60+Python33库。
    • Enthought Canopy(Enthought Python Distribution)
      当前最新版本:1.4.1 (06/11/2014),支持Linux, Windows, Mac平台和Python2.7.6。
      其库索引列出了所支持的150+测试过的Python库。
    • Anaconda
      当前最新版本:2.0.1 (06/12/2014),支持Linux, Windows, Mac平台和Python 2.6、2.7、3.3、3.4。
      其库索引列出了所支持的195+流行Python库。

    Python(x,y)和WinPython都是开源项目,其项目负责人都是Pierre Raybaut。按Pierre自己的说法是“WinPython不是试图取替Python(x,y),而是出于不同动机和理念:更灵活、易于维护、可移动、对操作系统侵略性更小,但是用户友好性更差、包更少、没有同Windows资源管理器集成。”。参考1里面说Python(x,y)不是很稳定,此外看它目前的更新不是很频繁,确实有可能Pierre后来的工作重心放在WinPython上了。

     
    Canopy和Anaconda是公司推的,带免费版和商业版/插件。这两款发行版也牵扯到一个人,那就是Travis Oliphant。Travis是SciPy的原始作者,同时也是NumPy的贡献者。Travis在2008年以副总裁身份加入Enthought,2012年以总裁的身份离开,创立了一个新公司continuum.io,并推出了Python的科学计算平台Anaconda。Anaconda相对Canopy支持Python的版本更多,对Python新版本支持跟的很紧(Sage不支持Python3.x的理由是因为其依赖的SciPy还不支持Python3,而Anaconda却实现了支持Python3.3和3.4,这就说明问题了),此外其在Linux平台下(通过conda管理)安装更方便。
     
     

    一、为什么选择Anaconda?

    1.1 什么是 Anaconda?

    Anaconda是专注于数据分析的Python发行版本,包含了conda、Python等190多个科学包及其依赖项。作为好奇宝宝的你是不是发现了一个新名词 conda,那么你一定会问 conda 又是什么呢?

    1.2 什么是 conda ?

    conda 是开源包(packages)和虚拟环境(environment)的管理系统。

    • packages 管理: 可以使用 conda 来安装、更新 、卸载工具包 ,并且它更关注于数据科学相关的工具包。在安装 anaconda 时就预先集成了像 Numpy、Scipy、 pandas、Scikit-learn 这些在数据分析中常用的包。另外值得一提的是,conda 并不仅仅管理Python的工具包,它也能安装非python的包。比如在新版的 Anaconda 中就可以安装R语言的集成开发环境 Rstudio。

    • 虚拟环境管理: 在conda中可以建立多个虚拟环境,用于隔离不同项目所需的不同版本的工具包,以防止版本上的冲突。对纠结于 Python 版本的同学们,我们也可以建立 Python2 和 Python3 两个环境,来分别运行不同版本的 Python 代码。

    知道 是什么(what) 的同时,我们也需要问一问 为什么(why)。那么,为什么要选择用Anaconda呢?

    1.3 Anaconda 的优点?

    Anaconda的优点总结起来就八个字:省时省心、分析利器。

    • 省时省心: Anaconda通过管理工具包、开发环境、Python版本,大大简化了你的工作流程。不仅可以方便地安装、更新、卸载工具包,而且安装时能自动安装相应的依赖包,同时还能使用不同的虚拟环境隔离不同要求的项目。

    • 分析利器:Anaconda 官网中是这么宣传自己的:适用于企业级大数据分析的Python工具。其包含了720多个数据科学相关的开源包,在数据可视化、机器学习、深度学习等多方面都有涉及。不仅可以做数据分析,甚至可以用在大数据和人工智能领域。

    解决了 是什么 以及 为什么 的问题后,下面让我们看一下 怎么做(How)

    说明一下conda的设计理念——conda将几乎所有的工具、第三方包都当做package对待,甚至包括python和conda自身!因此,conda打破了包管理与环境管理的约束,能非常方便地安装各种版本python、各种package并方便地切换。

    参考:http://www.jianshu.com/p/169403f7e40c

    根据提示进行安装,完成后你大概会惊讶地发现电脑中多了好多应用,不用担心,我们一项项来看:

    • Anaconda Navigator :用于管理工具包和环境的图形用户界面,后续涉及的众多管理命令也可以在 Navigator 中手工实现。
    • Jupyter notebook :基于web的交互式计算环境,可以编辑易于人们阅读的文档,用于展示数据分析的过程。
    • qtconsole :一个可执行 IPython 的仿终端图形界面程序,相比 Python Shell 界面,qtconsole 可以直接显示代码生成的图形,实现多行代码输入执行,以及内置许多有用的功能和函数。
    • spyder :一个使用Python语言、跨平台的、科学运算集成开发环境。
    修改Path变量

    设置命令行:
    新建一个变量:
    Python27: D:programFilesAnaconda2
    然后path增加:
    python目录和scripts目录。


    在cmd输入python -v

    PS C:Usersa> Python -V
    Python 2.7.14 :: Anaconda, Inc.
    PS C:Usersa>

     可以看到输出python版本是 Anaconda ,说明是Anaconda下面的python.

    Spyder的最大优点就是模仿MATLAB的“工作空间”。


    Conda的包管理:

    Conda的包管理就比较好理解了,这部分功能与pip类似。

    # 安装scipy
    conda install scipy
    # conda会从从远程搜索scipy的相关信息和依赖项目,对于python 3.4,conda会同时安装numpy和mkl(运算加速的库)

    # 查看已经安装的packages
    conda list
    # 最新版的conda是从site-packages文件夹中搜索已经安装的包,不依赖于pip,因此可以显示出通过各种方式安装的包

    前面已经提到,conda将conda、python等都视为package,因此,完全可以使用conda来管理conda和python的版本,例如

    # 更新conda,保持conda最新
    conda update conda
    
    # 更新anaconda
    conda update anaconda
    
    # 更新python
    conda update python
    # 假设当前环境是python 3.4, conda会将python升级为3.4.x系列的当前最新版本

    补充:如果创建新的python环境,比如3.4,运行conda create -n python34 python=3.4之后,conda仅安装python 3.4相关的必须项,如python, pip等

    设置国内镜像

    如果需要安装很多packages,你会发现conda下载的速度经常很慢,因为Anaconda.org的服务器在国外。所幸的是,清华TUNA镜像源有Anaconda仓库的镜像,我们将其加入conda的配置即可:

    # 添加Anaconda的TUNA镜像
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    # TUNA的help中镜像地址加有引号,需要去掉
    
    # 设置搜索时显示通道地址
    conda config --set show_channel_urls yes

    执行完上述命令后,会生成~/.condarc(Linux/Mac)或C:UsersUSER_NAME.condarc文件,记录着我们对conda的配置,直接手动创建、编辑该文件是相同的效果。


    conda cheatsheet:
    https://conda.io/docs/_downloads/conda-cheatsheet.pdf



    conda create -n your_env_name python=X.X(2.7、3.6等)命令创建python版本为X.X、名字为your_env_name的虚拟环境。your_env_name文件可以在Anaconda安装目录envs文件下找到。

    4、使用激活(或切换不同python版本)的虚拟环境。

    如果创建新的python环境,比如3.4,运行conda create -n python34 python=3.4之后,conda仅安装python 3.4相关的必须项,如python, pip等,如果希望该环境像默认环境那样,安装anaconda集合包,只需要:

    # 在当前环境下安装anaconda包集合
    conda install anaconda
    
    # 结合创建环境的命令,以上操作可以合并为
    conda create -n python34 python=3.4 anaconda
    # 也可以不用全部安装,根据需求安装自己需要的package即可


    # 创建一个名为python34的环境,指定Python版本是3.4
    conda create --name python34 python=3.4

    # 激活某个环境
    activate python34 # for Windows
    source activate python34 # for Linux & Mac

    deactivate python34 # for Windows
    source deactivate python34 # for Linux & Mac

    # 删除一个已有的环境
    conda remove --name python34 --all
    ---------------------
     

    Conda包管理
    # 安装xxxx
    conda install xxxx

    # 查看当前环境下已安装的包
    conda list

    # 查看某个指定环境的已安装包
    conda list -n python34

    # 查找package信息
    conda search numpy

    # 安装package
    conda install -n python34 numpy # 如果不用-n指定环境名称,则被安装在当前活跃环境 也可以通过-c指定通过某个channel安装
     


    Conda 更新
    # 更新package
    conda update -n python34 numpy

    # 删除package
    conda remove -n python34 numpy

    # 更新conda,保持conda最新
    conda update conda

    # 更新anaconda
    conda update anaconda

    # 更新python
    conda update python
     

    列举当前所有环境

    conda info --envs
    conda env list
    Get a list of all my environments, active environment is shown with *


    Conda 源
    # 添加Anaconda的TUNA镜像
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    # TUNA的help中镜像地址加有引号,需要去掉

    # 设置搜索时显示通道地址
    conda config --set show_channel_urls yes
    ---------------------  

    -conda config --show-sources #查看当前使用源/.condarc 文件(conda config --show #查看所有信息)

    -conda config --remove channels 源名称或链接 #删除指定源

    发现conda下载还是很慢,
    网上说把
    新的办法:将condarc文件中的清华tuna镜像路径改成http,而不是https,重新打开cmd发现确实快了。
    也有说:
    修改condarc配置文件,

    #2、删除部分内容
    ## 主要是删除此行: - defaults
    #修改后配置文件的内容如下:
    vim ~/.condarc
    channels:
    - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
    - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
    show_channel_urls: true
    ————————————————
     原文链接:https://blog.csdn.net/ada0915/article/details/78529877


     
     
  • 相关阅读:
    React 学习笔记
    需要充实自己的课外东西
    近期计划
    测试TinyMCE编辑器
    我的第二篇博客园随笔
    博客已搬运至https://wz71014q.github.io
    关于HTTPS通信机制的笔记
    JS中数组的一些笔记
    Three学习之曲线
    Three入门学习笔记整理
  • 原文地址:https://www.cnblogs.com/youxin/p/7896390.html
Copyright © 2011-2022 走看看