Pandas的使用

作者: 眼君 | 来源:发表于2017-09-16 11:28 被阅读106次

    pandas是一个基于numpy的数据处理的库,我们可以简单的将pandas理解为对numpy的封装。

    pandas有两个主要的数据结构:Series和DataFrame.

    Series

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

    Series

    以上这组Series数据由一组values和一组index组成:

    values&index

    当然,我们也可以自定义索引的值:

    index

    我们甚至可以将Series看作是一个定长的有序字典,我们甚至可以直接把一个python字典转换成Series:

    字典与Series

    Series对象本身及其索引都有一个name属性,该属性跟pandas其他关键功能关系非常密切:

    DataFrame

    DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型,DataFrame既有行索引也有列索引,它可以被看作是由Series组成的字典。

    同样的我们可以直接传入一个由等长列表或Numpy数组组成的字典:

    从字典构建pandas

    如果在DataFrame中指定列序列,则DataFrame的列就会按照指定顺序进行排列:

    DataFrame指定列

    通过字典标记的方式或者属性的方式,都剋获取DataFrame中的一个Series:

     从pandas获取Series

    我们也可以通过ix方法获取一行DataFrame数据:

    通过索引字段获取一行数据

    DataFrame也可以通过属性方式获取index、columns、values。

    安装

    >>>pip install pandas

    读取数据

    如同numpy一样,Pandas也有一些自带的函数用于读取数据。以下代码用于读取csv文件中的数据:

    原始数据 读取CSV文件

    head()方法和tail()方法用于显示头N条和尾N条数据,如果括号内里不填参数,则默认N为5。

    head与tail

    columns方法显示文档的列标签,shape方法显示数据规模,如图表示这个文档有8618条记录,每条记录有36个特征(列)项。

    columns和shape方法

    索引

    下面的代码表示在food_info中取第1行数据。

    loc()用法

    当然,pandas索引也支持切片操作

    索引

    我们也可以通过列名进行索引取每列的数据

    列名索引

    取多列数据

    取多列数据

    tolist()方法可以将数据转换成列表

    tolist()方法

    排序

    sort_values()方法用来对取出对数据进行排序,代码如下:

    sort_values()方法

    其中参数inplace = True意思是在原本对数据集food_info 中进行变换而非新生成一个对象,ascending=False意思是对取出对数据进行降序排序。

    pandas的常用运算方法

    isnull()方法判断缺失值

    isnull()方法 mean()求均值

    Pandas的数据透视表

    Pandas库自带一个pivot_table()方法用于对某一组数据生成数据透视表。

    参数index表示分类标签,参数values表示取数据的值,aggfunc表示对values进行哪种操作

    透视表函数(1) 透视表函数(2)

    剔除掉含有缺失值的数据

    剔除掉含有缺失值的数据

    填充缺失值

    相关文章

      网友评论

        本文标题:Pandas的使用

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