Python里的黄金库,学会了你的工资至少翻一倍

作者:[已重置]
链接:https://zhuanlan.zhihu.com/p/26054228
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

阅读本文大概需要5分钟

Python之所以这么流行,这么好用,就是因为Python提供了大量的第三方的库,开箱即用,非常方便,而且还免费哦,那么Python中到底有哪些黄金般的库呢,今天我们就来给大家讲一讲,学会了这些库不仅对提高你的功力大有裨益,而且还能涨工资不管你信不信,反正我是信了~~哈哈

一: 数据分析

学Python的同学里估计有30%以上是为了做数据分析师或者数据挖掘,所以数据分析相关的库,你一定要知道(也许有同学会问数据分析的工具很多有R,MATLAB,SAS,Stata,为啥要用Python,这个问题回答估计要说一壶,我年后讲数据分析的时候,会详细讲解)

1.NumPy

NumPy是Python科学计算的基础包,它提供:

1).快速高效的多维数组对象ndarray;

2).直接对数组执行数学运算及对数组执行元素级计算的函数;

3).用于读写硬盘上基于数组的数据集的工具

4).线性代数运算、傅里叶变换,以及随机数生成

2.Pandas

  • 大名鼎鼎的Pandas可以说只要做数据分析的,无人不知无人不晓,因为它太重要了.Pandas库提供了我们很多函数,能够快速的方便的,处理结构化的大型数据,不夸张的说,Pandas是让Python成为强大的数据分析工具的非常重要的一个因素.

  • 而且对于金融行业,比如基金股票的分析师来说,pandas提供了高性能的时间序列功能和一系列的工具,可以自由的灵活的处理数据,一次使用你就会爱上它.

3.Matplotlib

matplotlib是最流行的用于绘制数据图表的Python库,它和下面我们要讲的 IPython结合的很爽,绝对是好基友,提供了一种非常好用的交互式的数据绘图环境.

4.IPython

  • IPython是Python科学计算标准工具集的组成部分,它可以把很多东西联系到一起,有点类似一个增强版的Python shell.

  • 目的是为了提高编程,测试和调试Python代码的速度,好像很多国外的大学教授,还有Google大牛都很喜欢用IPython,确实很方便,至少我在分析数据的时候,也是用这个工具的,而且不用print,回车就能打印

二: 机器学习

现在人工智能非常火爆,机器学习应该算是人工智能里面的一个子领域,而其中有一块是对文本进行分析,对数据进行深入的挖掘提取一些特征值,然后用一些算法去学习,训练,分析,甚至还能预测.

打个比方吧,大家都知道瑞雪兆丰年,其实下雪和丰收没有什么联系,但是通过大量的数据分析,发现只要有瑞雪,来年丰收的概率就非常大,于是就用了瑞雪兆丰年的谚语.扯远了,我们回来继续说:

5.NLTK

自然语言处理里面赫赫有名的就是NLTK全称叫自然语言工具包(Natural Language Tookit),里面包含了大量的函数模块,可以获取语料库,字符串的处理,词性的解析,分类,语义解释,概率分析还有评估.

6.scikit-learn

  • Python社区里面机器学习模块sklearn,内置了很多算法,几乎实现了所有基本机器学习的算法。

  • 它主要包括6个方面:分类,回归,聚类,数据降维,模型选择,数据预处理.补充说一句里面的大量的算法都和数据有关,若数学基础不好的,可能会有一些吃力.

三: 爬虫与Web

这一块基本都和网页打交道,无论是你自己搭建一个网站还是爬别人的网站,下面几个库是必须要知道的

7.爬虫库

beautifulsoup4,urllib2,lxml,requests

上面几个库可以说是学习Python爬虫必备的库,必须要掌握,当然有的同学说我爬网页不是也可以用正则表达式吗,确实可以但是会很不方便,因为bs4和lxml都有便捷的接口,一般我们都是和正则结合使用,如果对速度有要求的话,建议用lmxp,它比bs4 速度要快很多


8.Scrapy

  • 爬虫的世界里面有没有懒人专用的框架~~当然有啦,scrapy就是其中比较有名的,可以快速,高层次的web抓取网页,并从web站点的页面中提取结构化的数据

  • Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试.最爽的就是它是一个框架,任何人都可以根据需求方便的修改,里面有很多类型爬虫的基类,如BaseSpider、sitemap爬虫等

9.web框架

  • Django算是Python web框架里重量级的选手,主要是因为它提供了一站式的解决方案,包括缓存,ORM,后台管理,验证,表单等等,是的开发复杂的数据库驱动的网站变的很简单,而且有非常齐备的官方文档

  • Flask设计的理念跟Django完全相反,它是轻量级Web应用框架的代表.它只保留核心的功能,其他的功能都是可以变动,可以扩展的,你可以更加直接的需求灵活搭配

  • Tornado全称叫Tornado Web Server,目前是Facebook开源的一个版本,它和其他主流的框架有一个非常明显的区别:就是非阻塞式服务器,速度非常快.特别对于长轮询,WebSocket等实时要求高的web服务来说是一个福音,基本可以和Node.js一决高下.

好了Python的黄金库就讲到这里啦,我觉得虽然库的学习固然很重要,但是最重要的是你需要知道自己为什么要学这些库,你到底要解决哪个领域的事情,由问题驱动去学习是比较好的方法(个人建议仅供参考)

posted @ 2019-03-31 21:15  xihuineng  阅读(433)  评论(0编辑  收藏  举报