数据分析的主要由识别信息需求、收集数据、分析数据、评价并改进数据分析的有效性 组成。
分析数据 = 方法 + 工具
Python之所以强大,是因为它强大的胶水能力 + 丰富的扩展程序库。
主要的知识点:
数据分析扩展包:Numpy,Pandas, MatPlotlib, seaborn, plotly
IDE:Jupyter Notebook
Tips:
python3开发包预装:
!pip3 install --user --upgrade --force-reinstall --no-cache-dir 'http://scm.byted.org/api/v2/repos/download_latest?name=data/dp/pytqs_py3'
自行安装: https://www.anaconda.com/distribution/
打开终端输入:jupyter notebook
NumPy
NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的运行速度非常快的数学函数库,主要用于数组计算,包含:
一个强大的N维数组对象 ndarray
广播功能函数
整合 C/C++/Fortran 代码的工具
线性代数、傅里叶变换、随机数生成等功能
Matplotlib
Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 它也可以和图形工具包一起使用,如 PyQt 和 wxPython。
Seaborn: statistical data visualization
Seaborn 是基于 Matplotlib的绘图库。
Plotly: Python Open Source Graphing Library
Plotly的Python图形库可生成交互式的,具有出版物质量的图形。
Pandas:powerful Python data analysis toolkit
Pandas是(抄了R)基于(抄了MATLAB的)numpy搭建的、专门用于数据分析的Python工具箱。
官网:Python Data Analysis Library
Pandas的优点
Pandas相比于传统的经济学计算工具(Stata、SAS、R、MATLAB等)的优点有很多:
相比于R等统计软件,Pandas借鉴了R的数据结构,因此拥有了R的很多方便的数据操作特性;在语法设计上,Pandas相比于R和Stata更严谨并且更简洁易用;基于Python的自动管理内存的能力,以及在很多细节上的优化(比如在数据操作过程中数据复制和引用),Pandas拥有了更好的管理和计算大数据的能力。
Pandas的底层基于Numpy搭建,因此Pandas拥有了Numpy的全部优点,比如,Pandas定义的数据结构可以支持Numpy已经定义的计算,相当于拥有了MATLAB的矩阵计算能力;Numpy原生的C接口,也给扩展Pandas的计算性能带来了很大的方便。
Pandas提供了大量和其他语言交互的接口(比如基于IO:IO Tools (Text, CSV, HDF5, ...),可视化:Visualization),再加上Python原生强大的胶水能力,Python+Pandas可以良好地与其他语言交互。
Pandas的缺点
Pandas的主要缺点,或者说Python做经济学研究的整个工具链相对来说非常不完善。主要的原因,一是缺少社区支持,二是可替代产品比较多并且历史更悠久,所以Python+Python第三方库的计量工具相对来说非常少。
不支持在 Docs 外粘贴 block
Visualization
数据可视化 通俗一点讲,无非就是将复杂的数据信息进行图形化展示,目的就是为了方便用户从一堆杂乱无章的数据里面更高效的理解或分析,让花费一个小时才能归纳的数据信息,转化为一眼就能看懂的数据图表。
干货:可视化
不支持在 Docs 外粘贴 block
附录:
1.Comparison with SQL
https://pandas.pydata.org/pandas-docs/stable/getting_started/comparison/comparison_with_sql.html
2.Plotly Python Open Source Graphing Library
https://plot.ly/python/