利用 Python 进行数据分析(一)简单介绍
2016-08-01 16:30
891 查看
一、处理数据的基本内容
数据分析
是指对数据进行控制、处理、整理、分析的过程。
在这里,“数据”是指结构化的数据,例如:记录、多维数组、Excel 里的数据、关系型数据库中的数据、数据表等。
二、说说 Python 这门语言
Python 是现在最受欢迎的动态编程语言之一(还有 Perl、Ruby 等)。近些年非常流行用 Python 建站,比如流行的 Python Web 框架 Django。
Python 这类语言被称为脚本语言,因为它们可以编写简短粗糙的小程序,即脚本。不过这好像在说 Python 无法构建严谨的软件似的,其实经过几年来不断改良,
Python 不但拥有强大的数据处理功能,而且完全可以用它构建生产系统
。
不过由于 Python 是一种解释型语言,
大部分 Python 代码都要比编译型语言(比如 C++ 和 Java)的代码慢得多
。所以在那些要求延迟非常小的应用中,为了尽最大可能优化性能,使用 C++ 这种更低级且低生产率的语言更值得。
对于高并发、多线程的应用程序,Python 也不是一种理想的编程语言
,这是因为 Python 有一个叫 GIL(全局解释器锁)的东西,这是一种防止解释器同时执行多条Python 字节码指令的机制。这并不是说 Python 不能执行真正多线程并行代码,只不过这些代码不能在单个 Python 进程中执行而已。
三、与数据分析相关的 Python 库
NumPy
NumPy 是 Python 科学计算的基础包,它提供:
快速高效的多维数组对象 ndarray;
直接对数组执行数学运算及对数组执行元素级计算的函数;
线性代数运算、随机数生成;
将 C、C++、Fortran 代码集成到 Python 的工具等。
它专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如:Lawrence Livermore,NASA 用其处理一些本来使用 C++,Fortran 或Matlab 等所做的任务。
Pandas
Pandas 主要提供快速便捷地处理结构化数据的大量数据结构和函数。
Matplotlib
Matplotlib 是最流行的用于绘制数据图表的 Python 库。
IPython
IPython 是 Python 科学计算标准工具集的组成部分,是一个增强的 Python Shell,目的是提高编写、测试、调试 Python 代码的速度。主要用于交互式数据处理和利用matplotlib 对数据进行可视化处理。
SciPy
SciPy 是一组专门解决科学计算中各种标准问题域的包的集合。主要包括以下包:
scipy.integrate: 数值积分例程和微分方程求解器;
scipy.linalg: 扩展了由 numpy.linalg 提供的线性代数例程和矩阵分解功能;
scipy.optimize: 函数优化器以及根查找算法;
scipy.signal: 信号处理工具;
scipy.sparse: 稀疏矩阵和稀疏线性系统求解器;
scipy.special: SPECFUN(这是一个实现了许多常用数学函数的 Fortran 库)的包装器。
scipy.stats: 标准连续和离散概率分布、各种统计检验方法和更好的描述统计法;
scipy.weave: 利用内联 C++ 代码加速数组计算的工具。
四、环境安装与配置
很简单,以 Mac OS X 系统安装步骤为例:
首先需要安装 Xcode,为了使用 gcc C 和 C++ 编译器
下载并安装 Unthought Canopy(下载地址:https://store.enthought.com/downloads/)
Unthought Canopy 是面向科学计算的 Python 安装包,已包含 NumPy, SciPy, Pandas, Matplotlib, IPython 等库。
检测是否安装成功:
启动 IPython,导入 pandas 并输入 plot(arange(100)),如果弹出一个包含一条直线的绘图框即表示安装成功。
打开 Terminal:
包含一条直线的绘图框:
接下来一篇随笔内容是:利用 Python 进行数据分析(二)尝试处理一份 JSON 数据并生成条形图,有兴趣的朋友欢迎关注本博客,也欢迎大家添加评论进行讨论。
数据分析
是指对数据进行控制、处理、整理、分析的过程。
在这里,“数据”是指结构化的数据,例如:记录、多维数组、Excel 里的数据、关系型数据库中的数据、数据表等。
二、说说 Python 这门语言
Python 是现在最受欢迎的动态编程语言之一(还有 Perl、Ruby 等)。近些年非常流行用 Python 建站,比如流行的 Python Web 框架 Django。
Python 这类语言被称为脚本语言,因为它们可以编写简短粗糙的小程序,即脚本。不过这好像在说 Python 无法构建严谨的软件似的,其实经过几年来不断改良,
Python 不但拥有强大的数据处理功能,而且完全可以用它构建生产系统
。
不过由于 Python 是一种解释型语言,
大部分 Python 代码都要比编译型语言(比如 C++ 和 Java)的代码慢得多
。所以在那些要求延迟非常小的应用中,为了尽最大可能优化性能,使用 C++ 这种更低级且低生产率的语言更值得。
对于高并发、多线程的应用程序,Python 也不是一种理想的编程语言
,这是因为 Python 有一个叫 GIL(全局解释器锁)的东西,这是一种防止解释器同时执行多条Python 字节码指令的机制。这并不是说 Python 不能执行真正多线程并行代码,只不过这些代码不能在单个 Python 进程中执行而已。
三、与数据分析相关的 Python 库
NumPy
NumPy 是 Python 科学计算的基础包,它提供:
快速高效的多维数组对象 ndarray;
直接对数组执行数学运算及对数组执行元素级计算的函数;
线性代数运算、随机数生成;
将 C、C++、Fortran 代码集成到 Python 的工具等。
它专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如:Lawrence Livermore,NASA 用其处理一些本来使用 C++,Fortran 或Matlab 等所做的任务。
Pandas
Pandas 主要提供快速便捷地处理结构化数据的大量数据结构和函数。
Matplotlib
Matplotlib 是最流行的用于绘制数据图表的 Python 库。
IPython
IPython 是 Python 科学计算标准工具集的组成部分,是一个增强的 Python Shell,目的是提高编写、测试、调试 Python 代码的速度。主要用于交互式数据处理和利用matplotlib 对数据进行可视化处理。
SciPy
SciPy 是一组专门解决科学计算中各种标准问题域的包的集合。主要包括以下包:
scipy.integrate: 数值积分例程和微分方程求解器;
scipy.linalg: 扩展了由 numpy.linalg 提供的线性代数例程和矩阵分解功能;
scipy.optimize: 函数优化器以及根查找算法;
scipy.signal: 信号处理工具;
scipy.sparse: 稀疏矩阵和稀疏线性系统求解器;
scipy.special: SPECFUN(这是一个实现了许多常用数学函数的 Fortran 库)的包装器。
scipy.stats: 标准连续和离散概率分布、各种统计检验方法和更好的描述统计法;
scipy.weave: 利用内联 C++ 代码加速数组计算的工具。
四、环境安装与配置
很简单,以 Mac OS X 系统安装步骤为例:
首先需要安装 Xcode,为了使用 gcc C 和 C++ 编译器
下载并安装 Unthought Canopy(下载地址:https://store.enthought.com/downloads/)
Unthought Canopy 是面向科学计算的 Python 安装包,已包含 NumPy, SciPy, Pandas, Matplotlib, IPython 等库。
检测是否安装成功:
启动 IPython,导入 pandas 并输入 plot(arange(100)),如果弹出一个包含一条直线的绘图框即表示安装成功。
打开 Terminal:
包含一条直线的绘图框:
接下来一篇随笔内容是:利用 Python 进行数据分析(二)尝试处理一份 JSON 数据并生成条形图,有兴趣的朋友欢迎关注本博客,也欢迎大家添加评论进行讨论。
相关文章推荐
- 利用 Python 进行数据分析(七)pandas 简单介绍(Series 和 DataFrame)
- 利用 Python 进行数据分析(四)NumPy 基础:ndarray 简单介绍
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍 一、pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
- linux下利用python进行数据分析(1)Anaconda 安装
- 利用Python进行数据分析——第一章:重要Python库安装配置
- 《利用Python进行数据分析: Python for Data Analysis 》学习随笔
- 利用Python进行数据分析--数据聚合与分组运算
- 利用python进行数据分析之数据聚合和分组运算
- 利用python进行数据分析-关于包的坑
- 利用Python进行数据分析--绘图和可视化
- [python和大数据-1]利用爬虫登录知乎进行BFS搜索抓取用户信息本地mysql分析【PART1】
- 利用Python进行数据分析——数据规整化:清理、转换、合并、重塑(七)(4) .
- 利用Python进行数据分析---ch02《MovieLens 1M数据集(下)》读书笔记
- 利用python进行数据分析之pandas库的应用(二)
- 利用python进行数据分析之数据加载存储与文件格式
- 利用python进行数据分析之pandas库的应用(一)
- 《利用python 进行数据分析》要点记录