一、处理数据的基本内容

数据分析

是指对数据进行控制、处理、整理、分析的过程。
在这里,“数据”是指结构化的数据,例如:记录、多维数组、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 系统安装步骤为例:
  1. 首先需要安装 Xcode,为了使用 gcc C 和 C++ 编译器
  2. 下载并安装 Unthought Canopy(下载地址:https://store.enthought.com/downloads/)

    Unthought Canopy 是面向科学计算的 Python 安装包,已包含 NumPy, SciPy, Pandas, Matplotlib, IPython 等库。

检测是否安装成功:
启动 IPython,导入 pandas 并输入 plot(arange(100)),如果弹出一个包含一条直线的绘图框即表示安装成功。
打开 Terminal:
包含一条直线的绘图框:
 

利用Python进行数据分析(1) 简单介绍的更多相关文章

  1. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  2. 利用Python进行数据分析(9) pandas基础: 汇总统计和计算

    pandas 对象拥有一些常用的数学和统计方法.   例如,sum() 方法,进行列小计:   sum() 方法传入 axis=1 指定为横向汇总,即行小计:   idxmax() 获取最大值对应的索 ...

  3. 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作

    一.reindex() 方法:重新索引 针对 Series   重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...

  4. 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍

    一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...

  5. 利用Python进行数据分析——重要的Python库介绍

    利用Python进行数据分析--重要的Python库介绍 一.NumPy 用于数组执行元素级计算及直接对数组执行数学运算 线性代数运算.傅里叶运算.随机数的生成 用于C/C++等代码的集成 二.pan ...

  6. 利用python进行数据分析——(一)库的学习

    总结一下自己对python常用包:Numpy,Pandas,Matplotlib,Scipy,Scikit-learn 一. Numpy: 标准安装的Python中用列表(list)保存一组值,可以用 ...

  7. $《利用Python进行数据分析》学习笔记系列——IPython

    本文主要介绍IPython这样一个交互工具的基本用法. 1. 简介 IPython是<利用Python进行数据分析>一书中主要用到的Python开发环境,简单来说是对原生python交互环 ...

  8. 利用python进行数据分析之pandas入门

    转自https://zhuanlan.zhihu.com/p/26100976 目录: 5.1 pandas 的数据结构介绍5.1.1 Series5.1.2 DataFrame5.1.3索引对象5. ...

  9. 利用Python进行数据分析-Pandas(第一部分)

    利用Python进行数据分析-Pandas: 在Pandas库中最重要的两个数据类型,分别是Series和DataFrame.如下的内容主要围绕这两个方面展开叙述! 在进行数据分析时,我们知道有两个基 ...

随机推荐

  1. 工欲善其事,必先利其器 之 VS2013全攻略(安装,技巧,快捷键,插件)!

    如有需要WPF工具的朋友可以移步 工欲善其事,必先利其器 之 WPF篇: 随着开发轨迹来看高效WPF开发的工具和技巧 之前一篇<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATI ...

  2. C++ 应用程序性能优化

    C++ 应用程序性能优化 eryar@163.com 1. Introduction 对于几何造型内核OpenCASCADE,由于会涉及到大量的数值算法,如矩阵相关计算,微积分,Newton迭代法解方 ...

  3. 使用python抓取婚恋网用户数据并用决策树生成自己择偶观

    最近在看<机器学习实战>的时候萌生了一个想法,自己去网上爬一些数据按照书上的方法处理一下,不仅可以加深自己对书本的理解,顺便还可以在github拉拉人气.刚好在看决策树这一章,书里面的理论 ...

  4. 深入理解CSS中的margin负值

    前面的话 margin属性在实际中非常常用,也是平时踩坑较多的地方.margin折叠部分相信不少人都因为这样那样的原因中过招.margin负值也是很常用的功能,很多特殊的布局方法都依赖于它.它看似简单 ...

  5. tomcat开发远程调试端口以及利用eclipse进行远程调试

    一.tomcat开发远程调试端口 方法1 WIN系统 在catalina.bat里:  SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compi ...

  6. 一起学微软Power BI系列-使用技巧(1)连接Oracle与Mysql数据库

    说起Oracle数据库,以前没用过Oracle不知道,但是这1年用Oracle后,发现真的是想狂吐槽,特别是那个.NET驱动和链接字符串,特别奇葩.总归是和其他数据库不一样,标新立异,不知道为何.另外 ...

  7. 【C#代码实战】群蚁算法理论与实践全攻略——旅行商等路径优化问题的新方法

    若干年前读研的时候,学院有一个教授,专门做群蚁算法的,很厉害,偶尔了解了一点点.感觉也是生物智能的一个体现,和遗传算法.神经网络有异曲同工之妙.只不过当时没有实际需求学习,所以没去研究.最近有一个这样 ...

  8. Android注解使用之通过annotationProcessor注解生成代码实现自己的ButterKnife框架

    前言: Annotation注解在Android的开发中的使用越来越普遍,例如EventBus.ButterKnife.Dagger2等,之前使用注解的时候需要利用反射机制势必影响到运行效率及性能,直 ...

  9. SQL面试笔试经典题(Part 1)

    本文是在Cat Qi的原贴的基础之上,经本人逐题分别在MySql数据库中实现的笔记,持续更新... 参考原贴:http://www.cnblogs.com/qixuejia/p/3637735.htm ...

  10. Linux实战教学笔记05:远程SSH连接服务与基本排错(新手扫盲篇)

    第五节 远程SSH连接服务与基本排错 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 远程连接LInux系统管理 1.1 为什么要远程连接Linux系统 在实际的工作场景中,虚拟机界面或物理 ...