数据分析
前言
- 基于统计的业务数据分析
- 基于模型的数据挖掘
- 单机数据和大数据
数学基础
统计学基础
- 推荐 可汗学院的统计学课程
- 涉及基础的统计学概念,聚合函数、各种统计图、分布、假设检验、线性回归、方差分析等。
- 统计学基础笔记
线性代数基础
- 推荐 麻省理工的线性代数课,必要的话再看。我没有看完
- 我听了前面的一些课程,和大学老师讲的完完全全不是一门课,这也许是你能找到的最优质的线性代数课程之一。
- 后面一部分偏难了点,我也没看懂。有需要可以温习。
数据结构
- 推荐一个APP 数据结构与算法
数据挖掘模型基础
- 很神奇的内容
- 统计学提供了直接可达的数据含义,诸如均值、方差、分位数、分布等等。
- 挖掘模型提供了深层的含义,诸如常见分类、聚类、回归模型等等,各种模型在数据逻辑上有不同的含义,尽管针对规范数据的挖掘模型,可以通过sklearn中的函数几乎一步实现,但是理解优雅的数学含义是更加有趣的过程,我的非常粗浅的入门知识
- 一个数据规范的分类挖掘算法案例
- sklearn是python进行机器学习的重要包,我连入门都没有,这里是sklearn中文文档
编程基础
Excel数据分析
- Excel作为通用办公软件,有其不可替代性,最大的优势即通用。
- 精通Excel是很困难的,不打算也不建议大家深入学习vba,了解函数、格式等常用的功能,更深入的偏向于自动化的内容可以交给Python。
- 基础Excel笔记
Linux基础
- 绝大部分服务器的系统,有基础的认知即可。
- 我的Linux基础笔记
Python基础
- 重点理解数据结构部分。
- 高级点的诸如闭包、装饰器、生成器之类的每次都学、学完都忘……
- 推荐个APP sololearn,全英文版,国内有相似的w3cshool,但是国内的要会员才能练习。
MySQL基础
- 数据库本身内容非常多、但是对分析师来说,数据库的应用内容相对少一点,不涉及建索引、性能调优之类。优先理解各种查询语言。
- 菜鸟教程 MySQL
- 精简SQL速查手册(待完善)
Python数据分析
NumPy
Pandas
- 在非大数据的数据处理(类似静态单机数据)时,这个包应该是最好用的。大数据有自己的数据抽象、存储和处理性能要求,但是理解单机静态数据的处理逻辑,在学习大数据时会比较容易。
- 数据抽象不同:
- NumPy 使用ndarry
- Pandas 使用一维的Series 多维的DataFrame
- Spark 内存计算用RDD (弹性分布式数据集)
- Spark SQL 使用DataFrame(和Pandas的相似,但不一样)
- 数据处理会转化为不同的数据抽象的各种操作,不同数据抽象的API方法不同,但是逻辑相似。
- Pandas速查手册
- 基础Pandas笔记
可视化
- 编程实现
- matplotlib
- matlib的python开源实现,copy式
- seaborn
- 样式(主题)简化且美化的matplotlib
- 和pandas的dataframe结合更好,有针对df直接绘图的方法,调用简单,默认样式更好看
- 风格和matplotlib相似,不能动态交互,适合出版。
- pyecharts
- 国产的可视化API,百度echarts的部分python实现。
- 相比较来说,交互性更好。
- 代码量偏大,没有dataframe的简便接口
- Pyecharts官方文档
- Pycharts笔记
- plotly
- 优秀的可视化,代码量少
- plotly.express (px) 有dataframe的独立接口
- 交互性良好
- dash
- 基于plotly的数据web框架,是flask+plotly的框架理念。并非简单的绘图包
- Dash框架例子
- matplotlib
- 软件BI
- Tableau
- 商业数据可视化的标杆产品、优质但收费
- Tableau函数学习
- Powerbi
- 微软旗下的BI产品,免费,但是做起来没有那么顺手,当然高手还是可以做出很漂亮的产品。我自己更倾向于编程实现的方法。
- Tableau
大数据
Hadoop
- 生态系统
- 重点解决 大数据存储和大数据处理
Spark
- 快速大数据处理
- 全面的处理分析栈
- 基础Spark笔记
