利用python进行数据分析—五、pandas入门

引言

  pandas是用来处理表格型或异质型(异质性就是说研究的样本的重要属性上存在差异)数据的,常用于数据清洗与分析。pandas常与Numpy和Scipy以及数据可视化工具matplotlib一起使用。

5.1pandas数据结构介绍

  pandas有两种常用的数据结构:Series和DataFrame

5.1.1Series

  Series是一维的数组型对象,包括一个值序列与索引。

values属性和index属性获得Series对象的值与索引

在这里插入图片描述
  使用字典生成一个Series,当你把字典传给Series函数时,产生的Series索引将是排序好的字典键。
在这里插入图片描述
  pandas使用isnull和notnull函数来检查缺失数据
在这里插入图片描述
  自动对齐索引
在这里插入图片描述
  Series对象自身与索引都有name属性
在这里插入图片描述
  Series的索引可以通过按位置赋值的方式进行改变
在这里插入图片描述

5.1.2DataFrame

  DataFrame既有行索引,又有列索引。尽管DataFrame是二维的,但是可以利用分层索引在DataFrame中展示更高维度的数据。
  构建DataFrame的最常用方式:利用包含等长度列表或者Numpy数组的字典来形成DataFrame
在这里插入图片描述
  DataFrame指定列顺序
在这里插入图片描述
  传的列不在字典中,将会在结果中出现缺失值

columns参数指定列索引
index参数指定行索引
同时,DataFrame也有columns与index属性

在这里插入图片描述
  通过索引返回指定列,返回类型为Series,返回的Series与原DataFrame有相同的索引
在这里插入图片描述
  使用loc访问行,iloc针对默认的数字索引(位置)
在这里插入图片描述
  当将列表或者数组赋值给DataFrame一个列时,值的长度必须和DataFrame的长度相匹配。如果将Series赋值给一列时,Series的索引将会按照DataFrame的索引重新排列,并在空缺处填充缺失值。
在这里插入图片描述
  del关键字可以删除指定列
在这里插入图片描述
  从DataFrame中选取的列是数据的视图,而不是拷贝。与numpy数组一致。
  构建DataFrame的另一种常用方式是包含字典的嵌套字典。
在这里插入图片描述
  DataFrame的name属性与values属性
在这里插入图片描述
DataFrame构造函数的有效输入
在这里插入图片描述

5.1.3索引对象

  在构建Series和DataFrame时,使用的任意数组或标签序列都可以在内部转换成索引对象。索引对象是不可变的。pandas索引对象可以包含重复标签。
在这里插入图片描述
一些常用索引对象的方法和属性
在这里插入图片描述

5.2基本功能

5.2.1重建索引

  reindex方法用于创建一个符合新索引的新对象。
  series调用reindex方法,数据会按照新的索引进行排列
在这里插入图片描述
  DataFrame调用reindex方法,可以改变行索引、列索引,也可以同时改变两者
在这里插入图片描述
在这里插入图片描述
reindex方法的参数
在这里插入图片描述
在这里插入图片描述

5.2.2删除指定轴上的项

  drop方法删除指定轴上项

inplace = Flase时,会返回新对象
inplace =True时,会直接操作原对象而不返回新对象

在这里插入图片描述
在这里插入图片描述

5.2.3索引、选择、过滤

  使用单个值或一个列表到[]中,从DataFrame中索引一个或多个列
在这里插入图片描述
  使用布尔值,从DataFrame中进行索引
在这里插入图片描述

5.2.3.1使用loc和iloc选择数据

  loc—标签索引,iloc—位置索引(整数)
DataFrame索引选项
在这里插入图片描述
在这里插入图片描述

5.2.4整数索引

  pandas上使用整数索引对新用户会产生歧义。为了保持一致性,如果有一个包含整数的轴索引,数据选择时使用标签索引。
在这里插入图片描述

5.2.5算术与数据对齐

在这里插入图片描述

5.2.5.1使用填充值的算术方法

  在两个不同索引化对象之间进行算术操作时,使用特殊填充值。
在这里插入图片描述
这些方法中都有一个r开头的副本,这些副本方法的参数是翻转的。

在这里插入图片描述
在这里插入图片描述

当轴标签在一个对象中存在,在另一个对象中不存在时,将缺失填充为0,两个都缺失则为NaN

5.2.5.2DataFrame与Series间的广播机制

  默认情况下,广播机制会将Series的索引与DataFrame的列进行匹配,并广播到各行。
在这里插入图片描述
  如果一个Series索引不在DataFrame的列索引中
在这里插入图片描述
  如果沿列广播,在行上匹配,则必须使用算法方法中的axis控制
在这里插入图片描述

5.2.6函数的应用与映射

  apply方法用来将函数应用到一行或者一列的一维数组上。
在这里插入图片描述
  传给apply的函数并不一定返回一个标量值,也可以返回带有多个值的Series
在这里插入图片描述
  applymap方法是逐元素计算
在这里插入图片描述
  对于Series对象,map是元素级别的
在这里插入图片描述

5.2.7排序

  按行索引或者列索引进行排序时,使用sort_index方法,该方法返回一个新的、排序好的对象。默认按行索引升序排序
在这里插入图片描述
  对Series值排序使用sort_values方法,默认所有缺失值都会排到Series尾部
在这里插入图片描述
  对DataFrame值排序使用sort_values方法,可以使用一列或者几列作为排序键,将一列或多个列名传到可选参数by
在这里插入图片描述

5.2.8排名

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.2.9含有重复标签的轴索引

在这里插入图片描述
在这里插入图片描述

5.3描述性统计

归约方法的常用可选参数列表:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
积累型方法:
在这里插入图片描述
汇总统计方法:
在这里插入图片描述

5.3.1相关性与协方差

  DataFrame的corr和cov方法会分别以DataFrame的形式返回相关性和协方差矩阵。使用DataFrame的corrwith方法,可以计算出DataFrame中的行或列与另一个DataFrame的相关性。
在这里插入图片描述

5.3.2唯一值、计算和成员属性

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_46649052/article/details/114787362