pandas数据类型判断(三)数据判断
1.函数:空值判断
1)判断数值是否为空用 pd.isna,pd.isnull,np.isnan
2)判断字符串是否为空用 pd.isna,pd.isnull;
3)判断时间是否为空用 pd.isna,pd.isnull,np.isnat

返回:布尔或布尔数组
>>> pd.isna(None)
True
>>>
>>> pd.isnull(None)
True
>>>
>>> np.nan(None)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'float' object is not callable
>>>
>>> np.isnat(None)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: ufunc 'isnat' is only defined for datetime and timedelta.
2.几种空值的判断 是== 还是is
==和is对None,''是有效的,而np.nan的比较只能用is
>>> None==None
True
>>> None is None
True
>>>
>>>
>>> np.nan==np.nan
False
>>> np.nan is np.nan
True
>>> np.nan is None
False
>>>
>>> '' is ''
True
>>> ''==''
True
但是np.inf无穷大就与np.nan不一样(哈哈)
>>> np.inf is np.inf
True
>>> np.inf == np.inf
True
>>> np.inf != np.inf
False
实例2:缺省值判断-ndarrays数组
>>> array = np.array([[1, np.nan, 3], [4, 5, np.nan]])
>>> pd.isna(array) #array([[False, True, False],[False, False, True]])
array([[False, True, False],
[False, False, True]])
实例3:缺省值判断-索引,返回一个布尔值的ndarray
>>> index = pd.DatetimeIndex(["2019-07-05", "2019-07-06", None])
>>> b=pd.isna(index)
>>> b
array([False, False, True])
>>> type(b)
<class 'numpy.ndarray'>
>>>
实例4:缺省值判断-Series
>>> s= pd.Series([1, 2,np.nan,np.inf,''])
>>> s.isna().tolist()
[False, False, True, False, False]
实例5:缺省值判断-DataFrame
dates=pd.date_range('2019-1-11',periods=4).tolist()
dates[3]=pd.NaT
df=pd.DataFrame([[10,20.1,'s1'],[11,20.2,''],[12,np.nan,None],[np.nan,20.4,'s4']] ,columns=list('ABC'))
df['D']=dates
df

pd.isna(df.B).tolist() #[False, False, True, False]
np.isnan(df.B).tolist() #[False, False, True, False] pd.isna(df.C).tolist() #[False, False, True, False]空字符串不为空 np.isnat(df.D).tolist() #[False, False, False, True]
pd.isna(df.D).tolist() #[False, False, False, True] pd.isna(df['D']) # 等价df['D'].isna()
2.函数:非空元素判断
pandas数据类型判断(三)数据判断的更多相关文章
- 随机生成一份试卷,试卷的种类分为单选、多选、判断三种题型。nodejs6.0 mysql
背景:从数据库中,随机生成一份试卷,试卷的种类分为单选.多选.判断三种题型. 首先我需要生成随机数id(在这之前我需要知道数据库中各个题型的题数,这样我才能设置随机数),并依据生成的随机数id,去查找 ...
- Python 数据分析:Pandas 缺省值的判断
Python 数据分析:Pandas 缺省值的判断 背景 我们从数据库中取出数据存入 Pandas None 转换成 NaN 或 NaT.但是,我们将 Pandas 数据写入数据库时又需要转换成 No ...
- Token验证的流程及如何准确的判断一个数据的类型
Token验证的流程: 1,客户端使用用户名跟密码请求登录:2,服务端收到请求,去验证用户名与密码:3,验证成功后,服务端会签发一个 Token,再把这个 Token 发送给客户端:4,客户端收到 T ...
- 判断js数据类型和clone
判断返回js数据类型 function judgeType(arg){//判断返回js数据类型 return Object.prototype.toString.call(arg).slice(8,- ...
- 判断json数据是否为空
json数据是没有length这个属性的 ,所以不能直接用.length()方法 我们可以先遍历,然后根据遍历次数求长度 1.在IE上这样遍历json:(js代码) var jsonLength = ...
- Jmeter—4 添加断言 判断响应数据是否符合预期
发出请求之后,通过添加断言可以判断响应数据是否是我们的预期结果. 1 在Jmeter中发送一个登录的http请求(参数故意输入错误).结果肯定是登陆失败啦. 但结果树中http请求的图标显示‘绿色’表 ...
- go golang 判断base64数据 获取随机字符串 截取字符串
go golang 判断base64数据 获取随机字符串 截取字符串 先少写点,占个坑,以后接着加. 1,获取指定长度随机字符串 func RandomDigits(length int) strin ...
- 判断DataTale中判断某个字段中包含某个数据
// <summary> /// 判断DataTale中判断某个字段中包含某个数据 /// </summary> /// <param name="dt&quo ...
- JavaScript基础知识(三个判断、三个循环)
三个判断 if…else…只会执行其中一个条件 如果if条件中只有一个值,那么会默认转布尔: if(1=="1"){ // 当括号中条件为true时,执行此处的代码 console ...
- JavaScript三种判断语句和三元运算符
三种判断语句 1.if结构 语法:if(条件){条件满足时执行的代码块} 2.if else结构 语法:if(条件){条件满足时执行的代码块} else{条件不满足时执行的代码块} 3.if el ...
随机推荐
- Jackson 动态Bean
为了解决json字符串有很多属性, 但是不必每个属性都映射到pojo的属性. @JsonProperty : 标记一个方法是一个属性的getter或setter方法, 也即把java属性和json域关 ...
- UML概念模型
UML概念模型 UML(Unified Modeling Language):统一建模语言,为面向对象开发系统的产品进行说明.可视化.和编制文档的标准语言 面向对象程序设计 面向对象基本概念:对象.类 ...
- DNS欺诈的三种简单方法总结
使用arpspoof.ettercap以及driftnet的简单组合. ①arpsppof+driftnet arpspoof -i eth0 -t 目标ip 目标网关 driftnet -i eth ...
- PB 之多行标题报表
第一种 1.添加一个text,将背景色选为非透明色:position中的layer,选为foreground,这样就可以拖动列宽了 2.在position属性标签页的width里,点右 ...
- java之hibernate之基于外键的双向一对一关联映射
这篇讲解 基于外键的双向一对一关联映射 1.考察如下信息,人和身份证之间是一个一对一的关系.表的设计 2.类结构 Person.java public class Person implements ...
- Window 使用Nginx 部署 Vue 并把nginx设为windows服务开机自动启动
1.编译打包Vue项目 在终端输入 npm run build 进行打包编译.等待... 打包完成生成dist文件夹,这就是打包完成的文件. 我们先放着,进行下一步. 2下载Nginx 下载地址: h ...
- Java序列化流
1.什么是序列化流 序列化就是把Java对象“流化”,序列化后的Java对象可以保存到本地文件系统,或者通过Socket传输到其他的服务器. Java中对象序列化有以下特点: 1)类实现java.io ...
- IOS - 总结下swift使用GCD 多线程(二)GCD和DispatchQueue
1.前言 iOS中处理多核并发的技术有两种分别是:`Grand Central Dispatch`(以下简称`GCD`)和`NSOperationQueue`框架.iOS开发的老司机们在程序开发中处 ...
- 【转载】 C#中List集合使用First方法查找符合条件的第一个元素
在C#的List集合相关操作中,很多时候需要从List集合中查找出符合条件的第一个元素对象,如果确认在List集合中一定存在符合条件的元素,则可以使用First方法来查找,First方法调用格式为Fi ...
- sourceTree 3.X免注册[学习]
一. 在路径C:\****\AppData\Local\Atlassian\SourceTree下创建accounts.json文件 [ { "$id": "1" ...