pandas-数据清洗


1. 缺失值处理

1.1 判断缺失值

一、info()
二、isnull(),可与any()和all()结合使用
三、notnull()web

导入数据:
在这里插入图片描述
使用info()能够查看每一列的相关信息,能够知道每一列有多少个非空数值。
在这里插入图片描述
使用isnull()判断空值,按列判断。
在这里插入图片描述
使用notnull()判断非空,按列判断。
在这里插入图片描述svg

1.2 丢弃缺失值

对于缺失值,能够丢弃处理(dropna)。
参数:3d

  • how:指定丢弃缺失值的行为,默认是any(即有缺失值就删除),all。
  • axis:指定丢弃行仍是列,默认是axis = 0,丢弃行。
  • thresh:设置当非空值达到多少个时,保留数据。
  • inplace:是否就地修改。

导入数据:
在这里插入图片描述
使用dropna()按行删除缺失值。本来有1396行数据,删除缺失值后,剩余1098行。
在这里插入图片描述
设置how
在这里插入图片描述
设置axis = 1,只要该列有缺失值就删除该列。
在这里插入图片描述
设置thresh,只要大于等于设置的值,该行才会被保留。
在这里插入图片描述xml

1.3 填充缺失值

对于缺失值,能够填充处理(fillna)。
参数:对象

  • value:指定填充的值,能够是字典,设置不一样的列(key)填充不一样的值(value)。
  • method:向上填充,采用前一个值填充(pad/ffill);向下填充,采用后一个值填充(backfill/bfill)。
  • limit:指定最大连续NaN填充的次数,若是没有指定,则表示填充全部的NaN。
  • iinplace:是否就地修改。

导入数据:
在这里插入图片描述
使用固定值填充
在这里插入图片描述
根据字典填充
在这里插入图片描述
向上填充ffill
在这里插入图片描述
向下填充bfill
在这里插入图片描述
limit最多连续填充NaN次数
在这里插入图片描述blog

1.4 describe()

describe()针对数值列和非数值列,显示的信息不同。图片

导入数据:
在这里插入图片描述
在这里插入图片描述it

2. 重复值处理

2.1 发现重复值

duplicated()发现重复值,该方法返回一个series类型对象,值为布尔类型。
参数:
subset:指定依据哪些列来判断是否重复,默认是全部列,即一行的全部值彻底相同视为重复。
keep:指定标记重复记录的规则,默认是first。ast

  • first:前面的记录标记为True
  • last:后面的记录标记为True
  • False:全部记录标记为True
    例如1,2,3行记录重复,则
    first:True True False
    last:False True True
    first:True True True

导入数据:
在这里插入图片描述
查看重复值
在这里插入图片描述
subset判断只要某些列相同,则认为是重复。
也可写subset = (字段名1,字段名2…)
在这里插入图片描述class

2.2 删除重复值

drop_duplicates()删除重复值。
参数:
subset:指定依据哪些列判断是否重复。
也可写subset = (字段名1,字段名2…)
在这里插入图片描述