本文给大家聊聊如何学习数据分析,我不是学数据出身的,后续转行来做数据分析师,所以说的有不对的地方请同学在留言更正。欢迎关注我的微信公众号:细说数据
下面画了一张草图:介绍来一下数据分析学习之路
1、基础知识:
分为几大块,首先是数学基础知识,数学基础知识可以看考研数学的知识点汇总,可能大家好多年没有摸过高等数学,都有些遗忘
可以看看知乎上面的一些知识汇总:
高等数学:https://zhuanlan.zhihu.com/p/36311622
线性代数:https://zhuanlan.zhihu.com/p/36584206
概率统计:https://zhuanlan.zhihu.com/p/36584335
七月在线:
https://www.bilibili.com/video/BV1b4411H7sE?from=search&seid=
3939631478652689401
2、实操技能:
其次就是实操的知识,也就是写代码的能力,不会写代码也能做数据分析,但是怎么说呢,都2021年了,多少要会点。python由于语言简单,胶水性能,近些年来欢迎程度越来越高,如果要做大数据建议掌握java,
计算机语言排名
Python
python入门可以看看廖雪峰的课程:
https://www.liaoxuefeng.com/wiki/1016959663602400
python - 100天从新手到大师:
https://github.com/jackfrued/Python-100-Days
B站也有好多资料:
[小甲鱼]零基础入门学习Python
https://www.bilibili.com/video/BV1xs411Q799?from=search&seid=
4859107368478327281
Python教程_600集Python从入门到精通教程
https://www.bilibili.com/video/BV1ex411x7Em?from=search&seid=
4859107368478327281
numpy和pandas
python数据分析神器
https://www.numpy.org.cn/
https://www.pypandas.cn/
SQL
SQL是取数当中常用的工具,mysql,hivesql语法可能有点差异,但在总体差不多,在互联网企业当中,sql可以说必备工具
SQl入门可以看看:
菜鸟教程
https://www.runoob.com/mysql/mysql-tutorial.html
mysql50题
https://blog.csdn.net/weixin_38611497/article/details/89299582
mysql窗口函数
https://zhuanlan.zhihu.com/p/138282683
数据可视化
这个有两个方向,一个是引用现成的模块例如matplotlib、serborn、plotly、pyecharts
还有一个就是直接用脚本语言开始干,例如javascript,
javaScript数据可视化编程
https://book.douban.com/subject/27003732/
建议入门学习的可以先从matplotlib、serborn入手
这个帖子不错,python可视化
https://zhuanlan.zhihu.com/p/313462427
下图是matplotlib50例子
https://www.machinelearningplus.com/plots/top-50-matplotlib-visualizations-the-master-plots-python/
Plotly Python包是一个基于plotly.js构建的开源库,而后者又建立在d3.js上
参考官网:
https://plotly.com/python/
之前也买过一本书:
python数据分析:基于Plotly的动态可视化绘图
https://book.douban.com/subject/30231493/
pyecharts 是一个用于生成 Echarts 图表的类库。实际上就是 Echarts 与 Python 的对接。
官网上有些参考:
https://pyecharts.org/#/
ECharts 是一个使用 JavaScript 实现的开源可视化库,涵盖各行业图表,满足各种需求。
ECharts 官网https://echarts.apache.org/zh/index.html
3、进阶知识
机器学习
这个方面的资料简直不要太多
大名鼎鼎的吴恩达 Machine Learning
https://www.coursera.org/learn/machine-learning
https://github.com/fengdu78/Coursera-ML-AndrewNg-Notes
CS229
http://cs229.stanford.edu/
https://www.bilibili.com/video/BV16J411t71N?from=search&seid=
6580434214926757664
李宏毅2020机器学习深度学习(完整版)国语
https://www.bilibili.com/video/BV1JE411g7XF?from=search&seid=
15563238910454821891
西瓜书
西瓜书的地位就类似化学里面的四大化学,邢其毅的有机化学,吴国庆无机化学,武汉大学的分析化学,傅献彩的物理化学,不过我当年学的是天大那版,哈哈,扯远了。
B站里面的视频
https://www.bilibili.com/video/BV17J411C7zZ?from=search&seid=
15563238910454821891
豆瓣书籍
https://book.douban.com/subject/26708119/
我司的大牛的李航的统计学习方法,目前已经是第二版,数学公式还是有点难,lark可以搜到其人,哈哈
B站里面的视频
https://www.bilibili.com/video/BV1i4411G7Xv?from=search&seid=5515334024145953479
代码实现
https://github.com/yangpengtaylor/lihang-code
https://github.com/Dod-o/Statistical-Learning-Method_Code
特征工程:
其实特征工程是机器学习模型当中一个步骤,但是在数据分析当中比较重要。
https://www.zhihu.com/question/28641663
Scikit-Learn是针对Python 编程语言的免费软件机器学习库,Scikit-learn的基本功能主要被分为六大部分:分类,回归,聚类,数据降维,模型选择和数据预处理。
官网:
https://scikit-learn.org/stable/index.html
中文https://sklearn.apachecn.org/
模型选择:
模型和算法这么多,如何选择是个问题,可以参考一下这些
https://zhuanlan.zhihu.com/p/25327755
https://zhuanlan.zhihu.com/p/141985216
深度学习:
吴恩达的深度学习
https://mooc.study.163.com/university/deeplearning_ai/#/c
https://www.coursera.org/specializations/deep-learning
https://github.com/fengdu78/deeplearning_ai_books
CS230
https://www.bilibili.com/video/BV1ex411X7pj?from=search&seid=673985408902355621
邱锡鹏 神经网络和深度学习
GitHub地址:
https://nndl.github.io/
示例代码:
https://github.com/nndl/nndl-codes
课程练习:
https://github.com/nndl/exercise
PDF:
https://nndl.github.io/nndl-book.pdf
深度学习的神书:花书
https://book.douban.com/subject/27087503/
https://github.com/exacity/deeplearningbook-chinese
https://www.bilibili.com/video/BV1kE4119726?from=search&seid=
8301262472296818192
深度学习500问
https://github.com/scutan90/DeepLearning-500-questions
Keras
Python深度学习
用keras框架写的
https://book.douban.com/subject/30293801/
TensorFlow
https://www.tensorflow.org/api_docs/python/tf
https://github.com/jikexueyuanwiki/tensorflow-zh
Pytorch
Pytorch最近几年上升的趋势十分明显
https://pytorch.org/docs/stable/index.html
Linux和Docker还没怎么接触,但是非常有用。
爬虫
网络爬虫又被称为网页蜘蛛,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。
学习步骤:
首先学会基本的Python语法知识
学习Python爬虫常用到的几个重要内置库urllib, http等,用于下载网页
学习正则表达式re、BeautifulSoup(bs4)、Xpath(lxml)等网页解析工具
开始一些简单的网站爬取(博主从百度开始的,哈哈),了解爬取数据过程
了解爬虫的一些反爬机制,header,robot,时间间隔,代理ip,隐含字段等
学习一些特殊网站的爬取,解决登录、Cookie、动态网页等问题
了解爬虫与数据库的结合,如何将爬取数据进行储存
学习应用Python的多线程、多进程进行爬取,提高爬虫效率
学习爬虫的框架,Scrapy、PySpider等
学习分布式爬虫(数据量庞大的需求)
数据结构
其实数据结构和算法是一个非常重要的知识点,计算机专业的同学基本都要学习,做算法工程师也是必考点。
https://www.bilibili.com/video/BV1os41117Fs?from=search&seid=
17089561085585680460
https://github.com/wangzheng0822/algo
还有R,学习里面R应该比较普遍,SPSS是很老的统计分析,Enviews经济方面的,Matlab大学里面学了点,数值分析功能强大,simulink建模仿真功能简直不要太强大。至于后面的深入不打算讲,毕竟是一个入门介绍。
主要是罗列了一些资料和方向,知乎上有关于如何成为数据分析师的讲解
https://www.zhihu.com/question/29265587,我讲解的其实有点超纲,比如excel,PowerBI,tableau都介绍,numpy和pandas其实在数据分析当中应用非常广泛,数据分析并一定需要多少理论知识就能完成的工作,但是他一定是要理论和实践结合起来,强调逻辑性,上手很容易,做好却不是一件容易的事情。取数很容易,写分析报告不是一件容易的事情,特别提出一个具有可实施性的策略更难,数据依赖于上下游关系,关于底层数据仓库,都没有介绍,其实这些年Flink应该广泛,还有ETL数据转换工具也是特别重要,数据分析只是经过ETL转换后的数据进一步分析的过程。
我英语有点稀烂,所以找到一些资料偏向于中文,建议还是尽量看一些原版的书籍或者论文,由于本篇主要是介绍入门知识,一些学术的文章就没有介绍了,毕竟当前自身的水平就只相当于大学生的水平,希望后续进一步努力,掌握基础知识的前提下看看一些前沿知识。科技日新月异,同样一些理论和算法越发蓬勃。
写到最后,作为一个持续学习的学渣,还有好多知识没有掌握,共勉,第一篇文章写得有点拼凑,希望后面给大家提供更好的文章,欢迎关注我的微信公众号:细说数据,谢谢。