本网站(662p.com)打包出售,且带程序代码数据,662p.com域名,程序内核采用TP框架开发,需要联系扣扣:2360248666 /wx:lianweikj
精品域名一口价出售:1y1m.com(350元) ,6b7b.com(400元) , 5k5j.com(380元) , yayj.com(1800元), jiongzhun.com(1000元) , niuzen.com(2800元) , zennei.com(5000元)
需要联系扣扣:2360248666 /wx:lianweikj
python pandas数据处理之删除特定行与列
chenguangming9 · 230浏览 · 发布于2022-08-16 +关注

Pandas是数据科学中的利器,你可能想到的数据处理骚操作,貌似用Pandas都能够实现,下面这篇文章主要给大家介绍了关于python pandas数据处理之删除特定行与列的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下


dropna() 方法过滤任何含有缺失值的行

pandas.DataFrame里,如果一行数据有任意值为空,则过滤掉整行,这时候使用dropna()方法是合适的。下面的案例,任意列只要有一个为空数据,则整行都干掉。但是我们常常遇到的情况,是根据一个指标(一列)数据的情况,去过滤行数据,类似Excel里面的过滤漏斗,怎么办?

>>> import pandas as pd
>>> data = pd.DataFrame([[1.,6.5,3.],[1.],[],[6.5,3.]],index=list('abcd'),columns=list('def'))
>>> data
     d    e    f
a  1.0  6.5  3.0
b  1.0  NaN  NaN
c  NaN  NaN  NaN
d  6.5  3.0  NaN
>>> data.dropna() #任意列只要有一个为空数据,则整行都干掉
     d    e    f
a  1.0  6.5  3.0

方法一:dropna() 其他参数解析

原文链接,我们引入了dropna()方法的其他参数。

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

参数说明:

  • axis:

    • axis=0: 删除包含缺失值的行

    • axis=1: 删除包含缺失值的列

  • how: 与axis配合使用

    • how=‘any’ :只要有缺失值出现,就删除该行或列

    • how=‘all’: 所有的值都缺失,才删除行或列

  • thresh: axis中至少有thresh个非缺失值,否则删除。比如 axis=0,thresh=10:标识如果该行中非缺失值的数量小于10,将删除改行

  • subset: list,在哪些列中查看是否有缺失值

  • inplace: 是否在原数据上操作。如果为真,返回None,否则返回新的copy,去掉了缺失值

>>> data.dropna(axis=0,subset=['e'])  #axis=0,删除行,在subset的列中进行查看
     d    e    f
a  1.0  6.5  3.0
d  6.5  3.0  NaN

方法二:替换并删除,Python pandas 如果某列值为空,过滤删除所在行数据

如上面的data数据,如果希望“e”列数值为空NaN时,删除对应行也就是“b、c”行数据,保留其他行,用dropna()似乎比较麻烦。 这个时候的思路是:

  • fillna()给空值填充一个数值(如999999)

  • index.tolist()找出值为填充值所在行的索引

  • drop根据索引干掉对应的行

>>> data['e']=data['e'].fillna(999999)
>>> find_index=data[(data.e==999999)].index.tolist()
>>> find_index
['b', 'c']
>>> data.drop(find_index)
     d    e    f
a  1.0  6.5  3.0
d  6.5  3.0  NaN


相关推荐

PHP实现部分字符隐藏

沙雕mars · 1325浏览 · 2019-04-28 09:47:56
Java中ArrayList和LinkedList区别

kenrry1992 · 908浏览 · 2019-05-08 21:14:54
Tomcat 下载及安装配置

manongba · 970浏览 · 2019-05-13 21:03:56
JAVA变量介绍

manongba · 962浏览 · 2019-05-13 21:05:52
什么是SpringBoot

iamitnan · 1086浏览 · 2019-05-14 22:20:36
加载中

0评论

评论
分类专栏
小鸟云服务器
扫码进入手机网页