分享

pandas中批量处理数据的4个函数!超实用

 禁忌石 2022-06-04 发布于浙江

哈喽大家中午好,今天是假期的第一天,同时也是一年一度的端午节,小编在这里祝愿大家端午安康呀!不知道大家有没有吃粽子呀!今天给大家介绍批量处理数据的4个函数!

我们在实际工作中,可能会遇到这样的问题,一张表格可能由于人为的原因不小心漏写的数据,但是一个个找并添加内容,实在麻烦,那么今天咱们就跟大家介绍下这么缺失值怎么批量处理:

1.isnull缺失值判断

这个函数,如它的名字一样,是判断表格中是否有缺失值的,返回值是布尔类型的,若为空,则显示TRUE,若非空,则显示FALSE。

主要用法:

dataframe.isna()

首先我们准备了一组数据如下,有些模块是空的就会以NAN来表示:

文章图片1

那么我们通过isnull缺失值判断哪些为空:

import pandas as pd

s = pd.read_excel('西游记和水浒传.xlsx')

m=s.isna()

返回的结果如下,可与上面的表格一一对应:

文章图片2

2.notnull缺失值判断

跟isnull缺失值判断类似,它是判断不为空的值,返回布尔类型,若不为空,则返回TRUE,若为空,则显示FALSE:

import pandas as pd

s = pd.read_excel('西游记和水浒传.xlsx')

m=s.notna()

文章图片3

3.dropnull删除缺失值

当我们想要把含有缺失值的行或者列进行过滤的时候可以直接使用,使用方法如下:

基本语法如下:

DataFrame.dropna(axis=0, how='any', thresh=None, subset=None)

我们一一为大家介绍各个参数代表什么:

①axis:代表按照行或者列进行删除整行或者整列,当axis=0当某行含有缺失值,直接删除;当axis=1当某列含有缺失值,直接删除。

举例:

还是以上面的列子,我们按照行进行删除:

import pandas as pd

s = pd.read_excel('西游记和水浒传.xlsx')

m=s.dropna()

显示结果如下:

文章图片4

how:代表删除的方式,默认是any,代表只要有缺失值就会被删除,可以改为all,代表当所有的数据为缺失值的时候才会被删除。

举例:

我们如下表中,薪资这列的数值全部为空,那么我们想要把这列删除,就可以这样做:

s = pd.read_excel('西游记和水浒传.xlsx')

m=s.dropna(axis=1,how='all')

我们就可以看到,最终薪资这列就被删除了:

文章图片5

thresh:代表着至少有几个非空值才会被删除:

举例:

我们设置,列上有至少2个以上缺失值才会被删除:

s = pd.read_excel('西游记和水浒传.xlsx')

m=s.dropna(axis=1,thresh=2)

由于薪资这行,全部为空,就被过滤掉了

文章图片6

subset:代表选择哪行或者哪一列进行缺失值的处理:

举例:

选择'薪资','姓名'没有缺失值的行:

s = pd.read_excel('西游记和水浒传.xlsx')

m=s.dropna(subset=['薪资','姓名'])

4.fillna填充缺失值:

①直接用相应的值填充缺失值:

用0填充缺失值:

s = pd.read_excel('西游记和水浒传.xlsx')

m=s.ffill(0)

文章图片7

②根据前面的数据进行填充:

s = pd.read_excel('西游记和水浒传.xlsx')

m=s.fillna(method='ffill')

文章图片8

③按列进行填充

s = pd.read_excel('西游记和水浒传.xlsx')

values = {'口头禅': 0, '年龄': 1}

m=s.fillna(value=values)

文章图片9

好了小伙伴们,今天的学习就先到这里吧,这篇文章可能有点长,不着急慢慢看,学习了可以帮助我们处理很多数据呢!加油!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多