美文网首页
深入浅出Pandas--Pandas的数据结构

深入浅出Pandas--Pandas的数据结构

作者: 亦是旅人呐 | 来源:发表于2022-05-16 09:31 被阅读0次
    对应书本第一部分第2章第4节

    Pandas提供Series和DataFrame作为数组数据的存储框架,数据进入这两种框架后,我们就可以利用它们提供的强大处理方法进行处理。

    需要注意的是,Pandas之前支持的三维面板(Panel)结构现已不再支持,可以使用多层索引形式来实现。


    Series

    Series(系列、数列、序列)是一个带有标签的一维数组,这一系列连续的数据代表了一定的业务意义。如以下各国2019年的GDP就是一个典型的Series。

    其中,国家是标签(也称索引),不是具体的数据,它起到解释、定位数据的作用。如果没有标签,只有一个数字,是不具有业务意义的。Series是Pandas最基础的数据结构。


    DataFrame

    DataFrame意为数据框,它就像一个存放数据的架子,有多行多列,每个数据在一个格子里,每个格子有自己的编号。就像一个球场的座位(下图),我们在横向编成1排、2排、3排等,在纵向编成1号、2号、3号等,那么4排18号、6排1号等就是具体的位置,每个人落座后就像一个具体的数据。

    DataFrame是Pandas定义的一个二维数据结构,其结构如下图

    • 横向的称作行(row),我们所说的一条数据就是指其中的一行;
    • 纵向的称作列(column)或者字段,是一条数据的某个值;
    • 第一行是表头,或者叫字段名,类似于Python字典里的键,代表数据的属性;
    • 第一列是索引,就是这行数据所描述的主体,也是这条数据的关键;
    • 在一些场景下,表头和索引也称为列索引和行索引;
    • 行索引和列索引可能会出现多层索引的情况(后面会遇到)。

    我们给上例国家GDP Series数据中增加一列“人口”,形成一个DataFrame

    • 共有三行两列(不包含索引)数据;
    • 国家所在列是这个表的索引,每一行数据的主体为这个国家;
    • 每条数据(横向)有两个值,分别是人口和GDP。

    索引

    在后续的内容中,在不同场景下可能会对索引使用以下名称。

    • 索引(index):行和列上的标签,标识二维数据坐标的行索引和列索引,默认情况下,指的是每一行的索引。如果是Series,那只能是它行上的索引。列索引又被称为字段名、表头。
    • 自然索引、数字索引:行和列的0~n(n为数据长度–1)形式的索引,数据天然具有的索引形式。虽然可以指定为其他名称,但在有些方法中依然可以使用。
    • 标签(label):行索引和列索引,如果是Series,那只能是它行上的索引。
    • 轴(axis):仅用在DataFrame结构中,代表数据的方向,如行和列,用0代表列(默认),1代表行。

    end~

    相关文章

      网友评论

          本文标题:深入浅出Pandas--Pandas的数据结构

          本文链接:https://www.haomeiwen.com/subject/blkiyrtx.html