前言
就像当年人人都是产品经理的风潮一样,学习数据分析也在圈子里流行起来。不管怎么说,学学数学,玩玩数据,还是一件很快乐的事情,参考我之前的文章:- 【Py大法系列–04】几十行代码让你知道朋友圈都是什么样的朋友。最重要的是,瑾瑾作业的代码我已经看不懂了鸭,那怎么还能愉快的跟我家女神一块儿做作业呢?
所以近段想开个专题,跟大家一起学习数据分析。至于为什么选择Python,道理大家都懂,已经说烂了。那我们就开始吧~
常见的Python数据分析库
Pandas
Pandas是一个开放源码的Python库,它使用强大的数据结构提供高性能的数据操作和分析工具。它的名字:Pandas是从Panel Data - 多维数据的计量经济学(an Econometrics from Multidimensional data)。
在Pandas之前,Python主要用于数据迁移和准备。它对数据分析的贡献更小。 Pandas解决了这个问题。使用Pandas可以完成数据处理和分析的五个典型步骤,而不管数据的来源 - 加载,准备,操作,模型和分析。Python Pandas用于广泛的领域,包括金融,经济,统计,分析等学术和商业领域。
Pandas的主要功能:
- 快速高效的DataFrame对象,具有默认和自定义的索引;
- 将数据从不同文件格式加载到内存中的数据对象的工具;
- 丢失数据的数据对齐和综合处理。重组和摆动日期集;
- 基于标签的切片,索引和大数据集的子集;
- 可以删除或插入来自数据结构的列;
- 按数据分组进行聚合和转换;
- 高性能合并和数据加入;
- 时间序列功能;
总的来说,Pandas比较适合用作数据的预处理和数据结构的处理。
NumPy
NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。
NumPy的主要功能:
- 快速高效的多维数组对象ndarray
- 用于对数组执行元素级计算以及直接对数组执行数学运算的函数
- 用于读写硬盘上基于数组的数据集的工具
- 线性代数运算、傅里叶变换,以及随机数生成
- 用于将C、C++、Fortran代码集成到python的工具
- 与线性代数有关的操作;
- NumPy 拥有线性代数和随机数生成的内置函数;
总的来说,NumPy适合用于科学计算和机器学习等大型计算工程,甚至成了MatLab的优秀替代者。
SciPy
SciPy是一个开放源码的BSD许可的数学,科学和工程库。 SciPy库依赖于NumPy,它提供了便捷且快速的N维数组操作。构建SciPy库的主要原因是,它能与NumPy数组一起工作,并提供了许多用户友好和高效的数字实践,例如:数值积分和优化的例程。
Matplotlib
Matplotlib是一个Python 2D绘图库,可以生成各种硬拷贝格式和跨平台交互式环境的出版物质量数据。Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包。
Matplotlib主要用于数据分析最后的数据可视化。当然目前有很Matplotlib的替代者,比如Pychart、echarts。
后续计划
本文只是对常见的Python数据库进行了简单介绍,后续我们将开始一系列的Python数据分析教程。由于Python3未来更有可能成为主流,我们的Python版本选为3.7.0,大家可以同步安装好这些包,让我们一起开启Python探索数据之旅~