加载中…
个人资料
邢不行的博客
邢不行的博客
  • 博客等级:
  • 博客积分:0
  • 博客访问:233,435
  • 关注人气:153
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

【邢不行|量化小讲堂系列40-Python量化入门】为什么我推荐使用Anaconda

(2019-02-26 17:37:20)
标签:

编程

股票

量化

量化小讲堂

数字货币

分类: 量化小讲堂

引言:

邢不行的系列帖子“量化小讲堂”,通过实际案例教初学者使用python进行量化投资,了解行业研究方向,希望能对大家有帮助。

【历史文章汇总】请点击此处



个人微信:xingbuxing0807,有问题欢迎交流。


为什么我推荐使用Anaconda

  【邢不行|量化小讲堂系列40-Python量化入门】为什么我推荐使用Anaconda

大家好,我是邢大的课程助教西蒙斯。


在答疑过程中,经常会遇到大家问关于Anaconda的问题。应邢大的要求,针对常见问题,给大家介绍一下如何正确安装和使用Anaconda,具体内容如下:


  1. 什么是Anaconda

  2. 为什么推荐?

  3. 为什么有人不喜欢?

  4. 如何正确安装

  5. 如何正确管理第三方包


关于Anaconda以及新手如何安装Python的问题,也可以直接看下邢大之前的文章:《如何安装Python & Pandas》


什么是Anaconda

Anaconda在一些人的眼中约等于Python,是安装Python的主流方式之一。


但其实Anaconda的意义更加深远,实际上它是一个统一的、跨平台的虚拟环境。


不理解“虚拟环境”和“跨平台”的不用慌,简单来说就是,通过Anaconda安装的Python、第三方包,在所有的操作系统上运行起来都是一样的。在安装第三方包的时候会自动帮你完成操作系统底层依赖的安装。

 

【邢不行|量化小讲堂系列40-Python量化入门】为什么我推荐使用Anaconda


如图所示,Anaconda是一个虚拟运行环境,安装完成后,会在这个环境中安装一个Python,并且不会影响到系统已经安装过的其他Python,是一套独立的运行环境。


为什么推荐?

省心,省心,省心。


当然这里说的省心是相对的。如果对于一个纯净的环境,今后工作主要依赖的是Anaconda提供的Python,比如做数据分析或者量化投资的同学,就一个字:爽。


如果多环境,并且主力环境并不是Anaconda的Python,那要小心了。安装完成后环境变量和PATH都会被修改,一定程度上会产生困扰,尤其是Python的老司机。


优点1:统一的环境

可能大家不是很理解什么是虚拟环境,什么是跨平台。举个例子,比如你在Windows上,在Anaconda里面安装了pandas,程序在本地稳定运行;之后放到Linux服务器上,通过Anaconda安装好环境,便可以稳定运行;或者拷贝给macOS的朋友,也可以稳定运行。有了Anaconda,就帮你同一化了底层的安装和依赖,可以一定程度上避免不同版本系统,不同操作系统之间的差异产生的问题。


优点2:丰富的第三方包

我不知道有没有同学曾经在系统上安装过TA-Lib,或者Tables这样的包,这里有很多坑。


在接触Anaconda之前,我相信超过90%的同学会使用pip安装这样的包。结果是要么缺少依赖安装失败,要么安装好了之后import不了。


Anaconda的灵魂之处就是通过它安装,不管是在Navigator里还是使用conda命令,安装好了就好了。实际上就是在Anaconda的环境下,当使用它提供的包的时候,它顺便解决了操作系统级别的依赖,并且不会污染你操作系统的大环境。


哪天你对它不爱了,铲了Anaconda会带走它的所有东西,通过它安装的内容也不会像垃圾一样赖在你的系统中。


优点3:多Py版本支持

Anaconda是支持多个版本的python同时存在的,不仅仅是python2和python3这样的大版本,还能支持python3.6.5和python3.6.4这样小版本共存共生。


同时Anaconda就提供了很方便的python版本管理,不同环境拥有独立的版本,独立的包管理。并且提供简单的命令和图形界面,非常的好用。


为什么有人不喜欢?

因为它会影响环境变量和PATH。


仅是使用Anaconda提供的Python来做Data Science的事情,一般不会遇到这些问题。但其他情况可能就不一定了。


我举一个非常实际的例子,很多同学使用了Anaconda之后,通过pip安装uwsgi会遇到问题。系统会提示你缺少依赖,并且你发现依赖装好了,还是继续报错。


当你使用的是Anaconda提供的python的时候,若提示缺少依赖不一定是操作系统缺少依赖,而是你当前的Conda的运行环境缺少依赖。


很多老司机在部署网站的时候会在这个点上面翻车,不过这个也是很好理解并且梳理的,理清楚了很好处理的。要解决上述问题其实在指定环境中通过conda安装uwsgi即可。


不过我的结论是:瑕不掩瑜,学会处理就行。


如何正确安装Anaconda

推荐的方法,没有之一:从官找到适合自己的系统的版本下载安装。因为网络限制,通常在国内下载会比较慢,此时可以将下载链接复制到迅雷下载,速度会快很多。

 

【邢不行|量化小讲堂系列40-Python量化入门】为什么我推荐使用Anaconda

Anaconda3带的是python3,Anaconda2带的是python2的运行环境。Windows和macOS都有安装包,直接默认点击下一步直到最后即可。以下是几个注意点:

  1. 使用默认的选项,不要自己调整

  2. Windows用户安装路径还是建议放在C盘默认的地方

  3. 关于“当前用户”还是“所有用户”:使用安装软件默认选项

  4. 关于“VS Code”那一步:这个是微软的硬广,不用理他,直接跳过即可。


对于Linux的用户,用wget或者类似的命令从官网下载sh执行即可。


针对像我一样的CentOS的真爱粉给一个温馨提示,安装前需要安装bzip2这个系统包。


如何正确管理第三方包

优先使用Anaconda安装,提示找不到对应的包的时候,通过Anaconda打开命令行,然后使用pip安装。


使用图形界面安装

  1. 打开Anaconda Navigator

  2. 在左边Environments进入并在显示的列表中选择要的那个环境(默认就一个base)。

  3. 搜索要安装的包,并打勾。(或者找到要卸载的包,并取消打勾)

  4. 点击右下角的Apply。

  5. 等待菊花转完就搞定了。


使用命令行安装

  1. 打开命令行工具(win:Anaconda Prompt,mac:Terminal)

  2. 如下图通过conda activate选择要的环境。 

  3. 输入“conda install 安转包的名字”即可,比如“conda install pandas”。

【邢不行|量化小讲堂系列40-Python量化入门】为什么我推荐使用Anaconda

 


在Anaconda环境中使用pip

不建议使用系统自带的命令行操作!

不建议使用系统自带的命令行操作!

不建议使用系统自带的命令行操作!


很多同学直接打开Windows的CMD,或者Mac的Terminal就用pip命令了,这个是不可取的。具体步骤如下:

  1. Win/Mac打开Anaconda Navigator。

  2. 左边点击Environments。

  3. 在中间的列表中找到你要安装的环境(默认的话就一个base)。

  4. 选中并且点击绿色的三角。

  5. 在下拉菜单中选择“open terminal”。

  6. 在弹出的命令行窗口中使用pip的命令。

Linux的无GUI用户就使用系统的terminal,通过conda activate切换环境后使用pip。


总结

本文主要是介绍了Anaconda及其优劣点,并且讲解了如何安装和使用Anaconda,到这里大家应该都能掌握Anaconda的正确打开方式了。若还有什么问题可以添加下方邢大的微信咨询。



对本文研究有自己的想法的朋友,欢迎在评论区留言。关于文中的代码、数据,以及下期《量化小讲堂》想了解的内容,也可以加我个人微信xingbuxing0807交流。

【邢不行|量化小讲堂系列40-Python量化入门】为什么我推荐使用Anaconda

如果你想入门量化,但是始终找不到方向,可以加入我的知识星球。我会在里面解答你的问题,分享我的感悟,不论是投资、技术,还是职业选择、思维方式。


-- 学习和成长从来都不是一个人的事 --

【邢不行|量化小讲堂系列40-Python量化入门】为什么我推荐使用Anaconda


0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有