pandas主要有两个数据结构:Series 和 DataFrame
维数 | 名称 | 描述 |
1 | Series | centered 带标签的一维同构数组 |
2 | DataFrame | 带标签的,大小可变的,二维异构表格 |
注:
- 同构是只能有一种类型的数据,而异构可以有多种
- 老版本支持三维的面板(Panel)结构,现在已经不再支持。
Pandas 将读取到的数据加载到叫做 Series 和 DataFrame 的数据结构框架当中,不用在意数据的具体含义,只要符合规则就可以。
之后按照这些框架自己的处理方法进行处理,这是对数据的一种高级抽象。
Series:
Series (系列、数列、序列)是一个带有标签的一维数组。
以下商品的名称是标签、索引,不是具体的数据,起到解释数据的作用。
香辣鸡腿堡 17.00
香辣鸡翅 10.50
吮指原味鸡 11.00
dtype: float64
带有同样标签和索引的 Series 可以组成一个 DataFrame,例如在上述的基础上再加上一列数量
DataFrame:
DataFrame 是 Pandas 定义的一个二维数据结构。
- 行(row),一条数据就是指其中的一行
- 列(column),或者叫一个字段,是一条数据的某个值
- 第一行是表头,或者可叫字段名,类型 Python 字典里的 key,代码数据的属性
- 第一列是索引(index),就是这行数据所描述的主体,也是这条数据的关键
表头和索引在一些场景下也有称列索引和行索引
这就是一个简单的 DataFrame:
价格 数量
香辣鸡腿堡 17.00 1
香辣鸡翅 10.50 2
吮指原味鸡 11.00 1
补充:
Series 和 DataFrame 里边的值都是可变的,比如增加行,并排序,筛选等等。Series 只有一列不能再增加,DataFrame 可以增加列。
在处理数据时,一般不要对原始数据(实际文件)及转入进来的初始数据进行改动,而是复制生成新的对象,或者使用方法链把处理过的数据传给新的对象。 这样可以避免损失,也方便修改和维护。