Pandas概述

简介: Pandas概述

Pandas(Python Data Analysis Library )是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。

Pandas是Python的一个数据分析包,最初由AQR Capital Management于2008年4月开发,并于2009年底开源出来,目前由专注于Python数据包开发的PyData开发team继续开发和维护,属于PyData项目的一部分。Pandas最初被作为金融数据分析工具而开发出来。

Pandas含有使数据分析工作变得更快更简单的高级数据结构和操作工具。pandas是基于Numpy构建的,让以Numpy为中心的应用变得更简单。

Pandas专用于数据预处理和数据分析的Python第三方库,最适合处理大型结构化表格数据

  • Pandas是2008年Wes McKinney于AQR资本做量化分析师时创建
  • Pandas借鉴了R的数据结构
  • Pandas基于Numpy搭建,支持Numpy中定义的大部分计算
  • Pandas含有使数据分析工作更简单高效的高级数据结构和操作工具
  • Pandas底层用Cython和C做了速度优化,极大提高了执行效率

Pandas引入约定:

from pandas import Series, DataFrame
import pandas as pd

1.1.1. Python、Numpy和Pandas对比

Python

  • list:Python自带数据类型,主要用一维,功能简单,效率低
  • Dict:Python自带数据类型,多维键值对,效率低

Numpy

  • ndarray:Numpy基础数据类型,单一数据类型
  • 关注数据结构/运算/维度(数据间关系)

Pandas

  • Series:1维,类似带索引的1维ndarray
  • DataFrame:2维,表格型数据类型,类似带行/列索引的2维ndarray 关注数据与索引的关系(数据实际应用)

从实用性、功能强弱和和可操作性比较:list < ndarray < Series/DataFrame

数据规整和分析工作中,ndarry数组作为必要补充,大部分数据尽量使用Pandas数据类型.

1.1.2. Pandas数据结构

Pandas的核心为两大数据结构,数据分析相关所有事物都是围绕着这两种结构进行的:

  • Series
  • DataFrame Series这样的数据结构用于存储一个序列的一维数据,而DataFrame作为更复杂的数据结构,则用于存储多维数据。

虽然这些数据结构不能解决所有的问题,但它们为大多数应用提供了有效和强大的工具。就简洁性而言,他们理解和使用起来都很简单。

两种数据结构奇特之处是讲索引对象和标签整合到自己的结构中,使得两种数据结构都具有很强的可操作性.

2. Series

Series是一种类似于一维数组的对象,它由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据即可产生最简单的Series.

2.1.1. Series示例

Series的字符串表现形式为:索引在左边,值在右边。由于我们没有为数据指定索引,于是会自动创建一个0~N-1的整数索引。我们可以通过Series的index和values属性获取索引和值的数组表现形式。

import pandas as pd
pd.Series([i for i in range(1,6)])

输出结果为:

0     1
1     2
2     3
3     4
4     5
dtype: int64
相关文章
|
SQL 索引 Python
Pandas之三选择数据
介绍在pandas中筛选数据的几种方法,快速定位某行、某列、具体元素的方法
748 0
Pandas之三选择数据
|
7月前
|
机器学习/深度学习 JSON 数据可视化
Numpy和Pandas简介
Python 是您在数据科学领域遇到的最流行的语言,因为它的简单性、庞大的社区和开源库的巨大可用性。
48 0
|
8月前
|
机器学习/深度学习 决策智能 计算机视觉
Pandas库之DataFrame学习笔记
Pandas库之DataFrame学习笔记
110 0
|
开发者 索引 Python
Pandas 基础5|学习笔记
快速学习 Pandas 基础5
77 0
|
开发者 索引 Python
Pandas 基础2|学习笔记
快速学习 Pandas 基础2
64 0
|
开发者 索引 Python
Pandas基础 6|学习笔记
快速学习 Pandas基础 6
46 0
|
开发者 数据库管理 索引
Pandas 基础 1|学习笔记
快速学习 Pandas 基础 1
122 0
|
开发者 索引 Python
Pandas 基础4|学习笔记
快速学习 Pandas 基础4
125 0
|
数据库 开发者 索引
Pandas 基础3|学习笔记
快速学习 Pandas 基础3
70 0
Pandas 基础3|学习笔记
|
数据挖掘 开发者 索引
Pandas 概述|学习笔记
快速学习 Pandas 概述
86 0