设为首页收藏本站

学完了Python基础后,你可以尝试这些方向!

[复制链接]
1129 0
Python作为人工智能和数据分析第一语言,使得Python程序员成了当前人才市场的“抢手货”,工资待遇也水涨船高。所以不管是应届生还是转行的人都选择了学习Python!

微信图片_20201123114200.jpg

Python是门神奇有魅力的语言,确实简单易用,能证明这一点的就是:很多人只要学完了Python基础,就能参与真实项目开发,90%的代码甚至不用查资料,利用简单的if/for/while/函数就全部搞定了。

然而随着项目的需求变得复杂,很多人不知不觉的在重复的造轮子。比如多数据的关联join、汇总统计、结果存入excel文件等等,尤其是对于多数据源(来自csv/txt/mysql)的关联join操作,自己从零开始用Python实现,比如把小文件加载到内存dict,遍历大文件去做dict查询实现JOIN,代码写起来刷刷的确实很爽。

然而有一天,当我发现这样多数据关联的需求,在spark、pandas等类库中就是一个简单现成的函数的时候,我非常激动,感叹为什么没有早点知道这些现成的技术。

Python的类库真的很多,其中成体系的可以称之为“数据科学技术栈”,这么多的类库即使不都学一下,也要了解它们分别是做什么的,这样将来遇到类似的需求的时候不用从头自己实现。

微信图片_20201123114209.png


1、Python爬虫




代表技术为requests/beautifulsoup、scrapy、selenium;
用于从网上爬取小说/文章/视频,实现数据分析或自己的内容聚集类应用。

世界上80%的爬虫是基于Python开发的,学好爬虫技能,可为后续的大数据分析、挖掘、机器学习等提供重要的数据源。


2、Python Web开发



代表技术为flask、django、jinjia2;
用于提供小程序、APP、网页等后台服务。

Python的Web框架百花齐放,目前比较流行的框架有大包大揽的Django,小巧灵活的Flask、Bottle,还有性能高效的异步框架Tornado、sanic。这么多框架只要选择一个,阅读他的文档,就可以很轻松的搭建一个Web app,完全不需要去管他实现的原理。


3、Python数值计算


数值计算是数据挖掘、机器学习的基础。Python提供多种强大的扩展库用于数值计算。代表技术有Numpy、SciPy。

Numpy:基础的数学计算模块,以矩阵为主,纯数学。
SciPy:基于Numpy,提供方法(函数库)直接计算结果,封装了一些高阶抽象和物理模型。比方说做个傅立叶变换,这是纯数学的,用Numpy;做个滤波器,这属于信号处理模型了,在Scipy里找。

当你学习机器学习/深度学习开始深入,发现大量的矩阵运算难以理解的时候,你得回头学习下Numpy这个技术。


4、Python数据分析


学Python的同学里估计有30%以上是为了做数据分析师或者数据挖掘,所以数据分析相关的库,你一定要知道。

代表技术为pandas,这是我认为Python最牛的库,囊括了多数据源读取/写入、数据清洗/过滤/聚合/汇总/透视/时间序列等等大量的功能特性。


5、Python数据可视化


电商行业、消费品行业数字滚动大屏;
旅游公司的人群行动轨迹预测图表;
媒体运营人员用户画像、阅读习惯分析;
……
这些都是数据的作用,而数据可视化正是将数据简化、从中提取规律的利器。

不需要你有额外的JS前端技术,你也能学会选择、制作分类散点图、分类分布图、分类统计估计图、分类子图等各种可视化操作方案。代表技术有Matplotlib、Pyecharts、Seaborn、Plotly、Bokeh等。


6、Python大数据处理


大数据领域,当前最成熟的技术应该是Spark,相较于Scala语言而言,Python具有其独有的优势及广泛应用性,因此Spark也推出了PySpark,在框架上提供了利用Python语言的接口,为数据科学家使用该框架提供了便利。

而PySpark是Spark的Python具包,使用这个库的好处是你可以无缝和numpy/pandas/绘图库对接,将大数据的结果进行最终的可视化分析(java/scala做不到这个)。


7、Python传统机器学习


当前传统机器学习的巅峰技术是xgboost,而sklearn中提供大量的易用函数使它成为方便的“机器学习/深度学习的工具函数库”。


8、Python深度学习



深度学习,是人工智能领域的一个突出的话题,被众人关注已经有相当长的一段时间了。它备受关注是因为在计算机视觉(Computer  Vision)和游戏(Alpha GO)等领域有超越人类能力的突破。

这其中的一些库我比别人用的多很多,尤其是Keras、mxnet和sklearn-theano。其他的一些我是间接的使用,比如Theano和TensorFlow(库包括Keras、deepy和Blocks等)。另外的我只是在一些特别的任务中用过(比如nolearn和他们的Deep Belief Network implementation)。

举报 使用道具

回复
搜索
热搜: java python UI HTML5

图文热点

客服中心

4006-371-555 周一至周六 9:00-19:00

关注我们

  • 关注官方微博
  • 关注官方微信
友情链接
快速回复 返回顶部 返回列表