首页 > 其他分享 >PyPackage01---Pandas17_null、inf筛选

PyPackage01---Pandas17_null、inf筛选

时间:2023-07-29 17:04:44浏览次数:36  
标签:PyPackage01 False df --- Student np inf True isfinite


判断数据集是否存在null、inf,快速定位所在列、行,方便分析原因

无穷大、无穷小处理

import pandas as pd
import numpy as np

# Create dataframe using dictionary
data = {'Student ID': [10, 11, 12, 13, 14], 'Age': [
    23, 22, 24, 22, np.nan], 'Weight': [66, 72, np.inf, 68, -np.inf]}

df = pd.DataFrame(data)
df



Student ID

Age

Weight

0

10

23.0

66.0

1

11

22.0

72.0

2

12

24.0

inf

3

13

22.0

68.0

4

14

NaN

-inf

是否存在inf

这里null也是非finite的

d = np.isfinite(df)
display(d)



Student ID

Age

Weight

0

True

True

True

1

True

True

True

2

True

True

False

3

True

True

True

4

True

False

False

都是有限数据

np.all(np.isfinite(df))
False

存在有限数据

np.any(np.isfinite(df))
True

定位行列

定位所在列

np.isfinite(df).sum()
Student ID    5
Age           4
Weight        3
dtype: int64
np.isfinite(df).all()
Student ID     True
Age           False
Weight        False
dtype: bool

定位所在行

np.isfinite(df).T.all()
0     True
1     True
2    False
3     True
4    False
dtype: bool
df[list(np.isfinite(df).all()[np.isfinite(df).all() == False].index)].loc[list(
    np.isfinite(df).T.all()[np.isfinite(df).T.all() == False].index), :]



Age

Weight

2

24.0

inf

4

NaN

-inf

这样找到无穷大值所在的行列,颇为麻烦

na值处理

df.isna().sum()
Student ID    0
Age           1
Weight        0
dtype: int64
df.isnull().sum()
Student ID    0
Age           1
Weight        0
dtype: int64

同样处理逻辑,直接看代码

np.isnan(df)



Student ID

Age

Weight

0

False

False

False

1

False

False

False

2

False

False

False

3

False

False

False

4

False

True

False

df[list(np.isnan(df).any()[np.isnan(df).any() == True].index)].loc[list(
    np.isnan(df).T.any()[np.isnan(df).T.any() == True].index), :]


标签:PyPackage01,False,df,---,Student,np,inf,True,isfinite
From: https://blog.51cto.com/u_15575753/6893732

相关文章

  • electron的electron-packager打包运行和electron-builder生产安装包过程,学透 Electron
    electron的electron-packager打包运行和electron-builder生产安装包过程开发electron客户端程序,打包是绕不开的问题。macOS应用构建,看似近在咫尺,实则坑坑致命。场景:mac笔记本打包,以及生产出可交付的软件安装包,如何避坑,如何理解app的产生过程!!!!可以按照我测试的路程来配置环境。包......
  • 【CMU15-445 FALL 2022】Project #1 - Buffer Pool
    About实验官网Project#1-BufferPool在线评测网站gradescopeLabTask#1-ExtendibleHashTable详见——【CMU15-445FALL2022】Project#1-ExtendableHashing如果链接失效,请查看当前平台我之前发布的文章。Task#2-LRU-KReplacementPolicyConcept相关参考LRU-K和2Q......
  • 面向对象编程的 SOLID 原则 - 里氏替换原则
    里氏替换原则里氏替换原则描述的是子类应该能替换为它的基类。意思是,给定classB是classA的子类,在预期传入classA的对象的任何方法传入classB的对象,方法都不应该有异常。这是一个预期的行为,因为继承假定子类继承了父类的一切。子类可以扩展行为但不会收窄。因此,当......
  • 关于vue element-admin 切换tag, 页面刷新 以及内存增加不释放问题
    1:切换tag,页面刷新,检查了路由,配置了  nocache:false,以及isKeep:true, 但是在页面tag切换时,还是会刷新,, 在生命周期中打印,发现能够打印,, 检查了代码,在组件引用中未发现v-if的使用, 最后竟查找,借鉴 https://blog.csdn.net/weixin_45616483/article/details/122959997 ......
  • 面向对象编程的 SOLID 原则 - 依赖倒置原则
    依赖倒置原则依赖倒置原则描述的是我们的class应该依赖接口和抽象类而不是具体的类和函数。在这篇文章(2000)里,Bob大叔如下总结该原则:“如果OCP声明了OO体系结构的目标,那么DIP则声明了主要机制”。这两个原则的确息息相关,我们在讨论开闭原则之前也要用到这一模式。......
  • 面向对象编程的 SOLID 原则 - 接口隔离原则
    接口隔离原则隔离意味着保持独立,接口隔离原则是关于接口的独立。该原则描述了很多客户端特定的接口优于一个多用途接口。客户端不应该强制实现他们不需要的函数。这是一个简单的原则,很好理解和实践,直接看例子。publicinterfaceParkingLot{ voidparkCar(); //Decrease......
  • v831-c-yolov2例程解析
    没错,自从把ubuntu搞坏之后无奈把之前的例程全删了,因此所有的笔记都没了,又得从新分析一遍main函数先从最简单的main分析此函数主要创建一个屏幕句柄用来显示,然后调用nn_test来开始yolov2的操作,并且传入画布,显示等都在里面操作,最后跳出来后摧毁屏幕nn_test函数此函数很长,一点......
  • 洛谷 P9479 - [NOI2023] 桂花树
    显然,条件一等价于在\(T'\)中,\(1\simn\)组成的虚树等于它本身。条件二等价于\(1\simi\)组成的虚树上点的标号不超过\(i+k\)。我们考虑在原树的基础上依次添加\(n+1\simn+m\)这\(m\)个点。添加一个点\(i\)时,它与原树的位置关系可能有以下几种:挂在原树上某......
  • Python面向对象编程-学习笔记(二)
    5.类的继承classEmployee:raise_amount=1.04def__init__(self,first,last,pay):self.first=firstself.last=lastself.pay=payself.email=first+'.'+last+'@company.com'cla......
  • 面向对象编程的 SOLID 原则 - 开闭原则
    开闭原则开闭原则要求“class应该对扩展开放对修改关闭”。修改意味着修改存在class的代码,扩展意味着添加新的功能。这个原则想要表达的是:我们应该能在不动class已经存在代码的前提下添加新的功能。这是因为当我们修改存在的代码时,我们就面临着创建潜在bug的风险。因此,......