数据分析

前言

数据分析认识

    • 基于统计的业务数据分析
    • 基于模型的数据挖掘
    • 单机数据和大数据

数学基础

统计学基础

线性代数基础

  • 推荐 麻省理工的线性代数课必要的话再看。我没有看完
  • 我听了前面的一些课程,和大学老师讲的完完全全不是一门课,这也许是你能找到的最优质的线性代数课程之一。
  • 后面一部分偏难了点,我也没看懂。有需要可以温习。

数据结构

数据挖掘模型基础

  • 很神奇的内容
  • 统计学提供了直接可达的数据含义,诸如均值、方差、分位数、分布等等。
  • 挖掘模型提供了深层的含义,诸如常见分类、聚类、回归模型等等,各种模型在数据逻辑上有不同的含义,尽管针对规范数据的挖掘模型,可以通过sklearn中的函数几乎一步实现,但是理解优雅的数学含义是更加有趣的过程,我的非常粗浅的入门知识
  • 一个数据规范的分类挖掘算法案例
  • sklearn是python进行机器学习的重要包,我连入门都没有,这里是sklearn中文文档

编程基础

Excel数据分析

  • Excel作为通用办公软件,有其不可替代性,最大的优势即通用
  • 精通Excel是很困难的,不打算也不建议大家深入学习vba,了解函数、格式等常用的功能,更深入的偏向于自动化的内容可以交给Python。
  • 基础Excel笔记

Linux基础

Python基础

  • 重点理解数据结构部分。
  • 高级点的诸如闭包、装饰器、生成器之类的每次都学、学完都忘……
  • 推荐个APP sololearn,全英文版,国内有相似的w3cshool,但是国内的要会员才能练习。

MySQL基础

  • 数据库本身内容非常多、但是对分析师来说,数据库的应用内容相对少一点,不涉及建索引、性能调优之类。优先理解各种查询语言。
  • 菜鸟教程 MySQL
  • 精简SQL速查手册(待完善)

Python数据分析

NumPy

  • Python数据结构的底层优化。因为Python本身不适合做计算型任务,这个包在底层用的C,所以效率更高。Python的数据分析包多把NumPy作为基础依赖包。
  • NumPy速查手册
  • 基础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框架例子
  • 软件BI
    • Tableau
      • 商业数据可视化的标杆产品、优质但收费
      • Tableau函数学习
    • Powerbi
      • 微软旗下的BI产品,免费,但是做起来没有那么顺手,当然高手还是可以做出很漂亮的产品。我自己更倾向于编程实现的方法。

大数据

Hadoop

  • 生态系统
  • 重点解决 大数据存储和大数据处理

Spark