-----2020.12.5 第一次修改-----
题主如果已经有了一定Python基础,那么下一步可以开始学习Python专门的数据模块NumPy和pandas了~接着是当下最火的机器学习和深度学习。然后,要有针对性地补充数据展示、数据库和网络爬虫的知识。
所以完整的学习路线大概包括主体路线和进阶路线,各包含四个模块。下面详细介绍的时候,我会提供具体的参考教材+免费视频供大家参考。
主体路线:Python编程基础 —> NumPy /panda数据处理 —>机器学习 —>深度学习。
数据分析IDLE神器——Spyder:一个功能齐全的Python数据分析环境,个人觉得比Jupyter Notebook好用很多。Jupyter的优势是逐行分析和展示代码,而Spyder可以看到变量环境、本地文件和帮助等等信息,还可以设置成RStudio风格,方便熟悉RStudio的用户上手。
https://www.spyder-ide.org/www.spyder-ide.org
(PS:PyCharm更为流行,不过那是攻城狮们玩的,不太适合我们数据科学家。hh)
学完这些模块,Python数据分析的主体知识已经差不多了。但是业界现实应用中,Python还需要经常和数据库(SQL+Non SQL),或者完成自动化的数据爬取。所以,题主还应该结合具体的应用场景补充其他知识模块,比如数据库、数据展示和爬虫。全部掌握这些模块,随便去个大厂都不成问题咯。
进阶路线:与Excel/R协同—>数据库(SQL+Non SQL)—>可视化—>网络爬虫。
下文目录1 主体路线
1.1 Python基础编程(题主可跳过)
1.2 NumPy和pandas数据分析
1.3 Python与机器学习
1.4 Python与深度学习(可跳过)
2 进阶路线
2.1 Python与Excel及R语言的协同(可跳过)
2.2 Python与数据库协同
2.3 Python与数据可视化
2.4 Python与网络爬虫
3 全文小结
(注意:各教材和视频涉及的知识点有所重叠,大家不必纠结。挑着学即可。)
1 Python数分主体路线
1.1 Python基础编程(题主可跳过)
核心基础知识包括:安装包命令——pip3的使用
四种基础数据类型——整形、浮点型、布尔型和字符串型
五种基础数据结构——列表、字典、元组、集合和字符串
三种控制结构:顺序、选择和循环。重点是循环,循环的重点是for语句
十大Python内置函数
函数和类的定义
高级语法:列表推导式、三元表达式、with-as、lambda匿名函数、迭代器和生成器等等
OOP编程理念
代码编写规范:格式声明、全局变量定义、命名规范和注释等
基础入门主要参考的教材(点击打开链接,会有更详尽的图书说明和用户评价):
点评:前两本书,全面细致地介绍了一些Python的基础元素。从Python下载安装、开发环境搭建,到Python数据类型、循环,再到数据分析、游戏开发、爬虫和机器学习,都有简单涉及。但是,坦白说,这两本书的作用有限,只能帮助我们入门。想要掌握Python数据分析技能,我们还要继续往前。
Btw,这本国产入门圣经《零基础学Python(全彩版)Python3.8 全新升级》在豆瓣居然没有评分。不过呢,不妨碍人家京东自营销量第二啊~~至于第一是谁?还能是谁——那自然是上面老歪写的那本入门圣经咯。
最后的两本入门书,大家有时间的时候可以多看,参考里面好的编程哲学和习惯。毕竟编程是一门艺术嘛,要学得精必然要多用心。
接下来是白嫖视频列表(再次声明,本文所推荐视频全部是公开免费的~!):【Python教程】《零基础入门学习Python》(小甲鱼)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com点评:小脚鱼???我听了N遍,我还是觉得老师自称小脚鱼hhhh。B站最受欢迎的Python入门课程。
Python教程_600集Python从入门到精通教程(懂中文就能学会)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com点评:从入门到放弃的最经典系列课程。花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com点评:面向全栈开发的,大家挑着看前面基础部分就好。
1.2 NumPy和pandas数据分析
点评:首先,这书的作者就是pandas的开发者McKinney大神呃。然后,这里第二版是基于Python3.6,豆瓣评分掉了一些(8.1分)。基于Python 2.7的第一版实在经典,拿下8.6分。
点评:又是一本JD 派森数据分析排前二的神书。还是那个老故事,老歪写的销量第一,国人写的排第二。这个书除了介绍pandas,还介绍了NumPy、matplotlib、seaborn以及sciki-learn。它还自带大量的项目,手把手带你在数据分析的高速路上狂奔!坦白说,如果只给你一本书,要求你一周学会用Py做数据分析,那么,忘了那些老歪大神吧,除了国产圣经你还真别无选择~!
点评:豆瓣9.3分已经说明一切,9.3也是这次书单中的豆瓣最高分。该书足以和我们介绍的第一本Python入门圣经媲美的神书。这个书最大的特别是基础而细致。当我们遇到一些技术细节问题的时候,有时候百度Google未必都能找到思路的时候,翻翻这种工具书也会找到你想要的答案。
豆瓣显示的是第一版的评分。链接里面给的是最新的第二版(2019年4月)。
点评:对于那些想要立志从事金融行业又想搞点高技术含量的同学,金融科技量化交易,绝对是一条不错的路线。此书的作者是Python Quants的创始人希尔皮斯科,量化交易方面的风云人物。
内容简介:这个书,讲了Py的基础和核心知识,讲了NumPy、pandas,金融统计和机器学习。针对金融,讲了随机过程、期权定价等等。最重要的是,讲了金融科技里面的算法交易、交易策略和自动化交易、金融模型模拟等等。
点评:国产版嘛,还是那个味。就是案例多,易上手,方便照猫画虎。可以作为上面那本的有效补充。
pandas白嫖视频列表:Numpy & Pandas (莫烦 Python 数据处理教程)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com【python教程】数据分析——numpy、pandas、matplotlib_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com【机器学习基础库】Numpy数据计算从入门到实战_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com
点评:三个视频专辑我都看过。第一个莫凡系列,老师讲话慢条斯理;第三个系列节奏比较快,干货比较多,老师讲话口音也很有特色。
1.3 Python与机器学习
机器学习和数据分析有关嘛?那当然有关咯。不管你是数据科学专业出身,还是经济管理计量领域,或是金融科技量化交易方面,机器学习都将是你站上时代潮头的最重要工具。
第一本是专门为小白准备的入门教材~
点评:连最基础的那些常见的希腊字母都给你解释怎么读,什么意思;给你解释ln函数啥意思。你还不满足嘛?如果你对机器学习充满好奇,又担心自己数序基础太差或者没有,那买这个书就对了。看完之后,你即使自己不会机器学习建模,但是大概看明白那些酷炫的算法还是没有问题滴。甚至,你可能会产生一种错觉——所谓的高深统计学习模型,也不过如此嘛~~!
1.4 Python与深度学习(可跳过)
机器学习是数据分析的高端部分,而深度学习是机器学习的高端部分。所以这块知识,建议是学有余力或者前面基础打好的同学再进一步拓展。
2 Python数分进阶路线
2.1 Python与Excel及R语言的协同(可跳过)
Excel大家知道吧,就是那个频繁出现在Python广告中的反面例子——“Excle加班熬夜搞通宵,几万个操作做不完。。。Python 两分钟3行代码轻轻松松搞定”之类。其实Excel这个软件,当然很重要很强大啊~多重要多强大?好吧,实在难以描述 undepictable。
反正,Excel是一个大家都多少多少会的软件。不管什么软件,都是为了处理数据,而已。那如果我们在用Python搞数据的时候,可以和Excel一起对比着学,那岂不是更加容易触类旁通举一反三?事实上作者本人就经常这么干。我不仅Excel一起学,还经常拉上Stata和R,和Python愉快地玩耍。
点评:Stata是经管界的通用语言,也是我用来跑计量模型发经济学论文的主力工具。然后呢,使用经验那肯定也很丰富。这里要是让我推荐唯一一本的话,当然就它了。这个书也是Stata官网中推荐的入门书籍之一。可能有读者看到了,那书用的Stata 12呢?好吧,本人学这本书时候用的13,目前用15.1和16.1,但是啊,也没明显发现上面的知识过时。为啥?因为介绍的都是很基础的东西。就像目前Stata很多官方视频,依然用的Stata 12 进行演示。
点评:豆瓣8.9分,还有什么好说的?这个书都被我给翻烂了,因为当年为了写一门金融数据分析课作业,经常写到想吐血。简单说来就四个字:入门最佳。
2.2 Python与数据库协同 / 大数据分析
2.3 Python与数据可视化
除了使用Python本身做可视化,我们还推荐读者学习另外一个可视化神器——tableau,这个软件称得上是可视化中新的王者,在业界应用也非常广泛,大有碾压其他前辈之势。
2.4 Python与网络爬虫
关于编程工具Python、JAVA、C、C++和VB等对比,不知道大家有没有看过那个搞笑的鬼畜视频。大概就是Python亮出它的招牌工具爬虫的时候,就成功爬到老二的位置。老大嘛,自然还是JAVA。不过时至今日,Python还有新的招牌机器学习,直接就翻越JAVA,成为编程界霸主。好了,回到爬虫。爬虫嘛,就是一个数据获取的重要工具,是Python数据分析的一个独立模块(初学者可以完全可以先放一边,后面再学)。当然数据爬回来之后的清洗整理工作,还是得交给前面咱们提到的NumPy和pandas的。
点评:爬虫算是数据处理的一个专门模块,想要学会可能需要了解一些HTML/CSS/JAVA Script的基础知识。好好看完这两本书,多照着国产那本的项目跑几遍,自己尝试一些小项目。如此下来,相比爬虫这一神器也能用起来了~!
3 全文小结
Python是个非常全能的软件,它涉足数据分析这块应用得益于大数据挖掘和机器学习的兴起。和普通开发用户的学习路径不同,数据分析的同学必须要明确自己的学习目标、抓住主要的知识模块,通过不断地模仿和练习,方能驾驭好Python这一强大而精密的工具。
当我们用Python来当成分析工具的时候,学Python和学R语言Stata等统计软件本质是类似的,都是通过计算机和代码去从数据中发现规律,为研究分析和商业决策提供基础。
数分这个学习方向,相对其他开发应用难度是要小很多滴~~所以题主只要明确路线,并稍作坚持,一定能学有所成!
最后的最后——自学贵在坚持~共勉!!!
And…
Nothing for nothing.
-----全文结束-----