美文网首页
《利用Python进行数据分析》-3 Pandas基础

《利用Python进行数据分析》-3 Pandas基础

作者: Yayamia | 来源:发表于2022-08-29 16:50 被阅读0次
    • Pandas含有使数据清洗和分析工作变得更快更简单的数据结构和操作工具
    • Pandas经常和其他工具一同使用,如数值计算工具Numpy和Scipy,分析库的statsmodels和scikit-learn,和数据可视化库matplotlib
    • 虽然Pandas采用了大量的Numpy的编码风格,但二者最大的不同是pandas是专门为处理表格和混杂数据设计的,而Numpy更适合处理同一的数值数组数据
    • Pandas的主要数据结构:Series和DataFrame

    Series

    • Series是一种类似于一维数组的对象,它是由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成。


      索引在左边,值在右边
    • 没有为数据指定索引时,会自动创建一个0到N-1的整数型索引。可以通过Series的Values和index属性获取其数组表示形式和索引对象。


    • 还可以将Series看成是一个定长的有序字典,因为它是索引值到数据值的一个映射。
    • 如果数据被存放在一个python字典中,也可以直接通过这个字典来创造Series
    • Series对象本身及其索引都有一个name属性,该属性和pandas其他关键功能关系非常密切


    • Series的index可以通过赋值的形式直接修改obj.index = [" ", " ",...]

    DataFrame

    • DataFrame是一个表格型数据结构,它含有一组有序的列,每列可以是不同的值类型。DataFrame既有行索引,也有列索引
    • 创建DataFrame最简单的方法就是直接传入一个由等长列表或Numpy数组构成的字典。


    • 如果传入的列在数据中找不到,就会在结果中产生缺失值NaN
    • 获取


    • 赋值


    • 另一种常见的数据形式是嵌套字典,如果嵌套字典传给DataFrame,pandas就会被解释为:外层字典的键作为列,内层键作为行索引


    • 也可以给DataFrame设置index和columns的name


    • 与python的集合不同,pandas的index可以包含重复的标签
    • index的方法和属性


    基本功能

    重新索引

    • pandas对象的一个重要方法是reindex,其作用是创建一个新对象,它的数据符合新的索引。


    • 对列也可以重新索引


    丢弃指定轴上的项

    axis=1 即 axis='columns'

    索引,选取和过滤

    • 对于Series的索引


    • 对于DataFrame的索引


    • 用loc(轴标签)和iloc(整数索引)进行选取


    • 还可加入相关的条件




      为了更标准,索引的时候最好用上loc或者iloc

    算数运算和数据对齐

    • pandas最重要的一个功能是,它可以对不同索引的对象进行算术运算。在将对象相加时,如果存在不同的索引对,则结果的索引就是该索引对的并集。


      将在两个series都有的索引的值相加,其他的索引变为NaN

      对于DataFrame,对齐操作会同时发生在行和列上。如果没有公用的行或列标签,结果都会是空。

    • 有时,我们希望当一个对象中某个标签在另一个对象中找不到时,填充一个特殊值(比如0)


      填充了原本的值

    排序

    • 根据索引排序: df.sort_index(axis=1),默认axis=0
    • 根据值排序: df.sort_values(by="column_name")
    • ranck():为各组分配一个平均排名
      相当于把计量资料变为等级资料

    汇总


    NA值会被自动排除,除非整个切片都是NA,可以通过skipna = False禁止该功能
    一次性产生多个汇总统计

    唯一值

    相关文章

      网友评论

          本文标题:《利用Python进行数据分析》-3 Pandas基础

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