pandas 4 处理缺失数据nan
from __future__ import print_function
import pandas as pd
import numpy as np
np.random.seed(1)
dates = pd.date_range('20130101', periods=6)
df = pd.DataFrame(np.arange(24).reshape((6,4)), index=dates, columns=['A', 'B', 'C', 'D'])
df.iloc[0,1] = np.nan
df.iloc[1,2] = np.nan # Nan模拟缺失的数据
print(df)
print(df.dropna(axis=0, how='all')) # how={'any', 'all'} 全部是0才丢掉
print(df.dropna(axis=0, how='any')) # how={'any', 'all'} 有0就丢掉行
print(df.fillna(value=0)) # 所有的nan用0填充
print(pd.isnull(df)) # 判断每一个数据是否是Nan,是nan就输出True
print(np.any(df.isnull()) == True) # 如果有数据缺失,就输出True
以下是所有的输出结果:
print(df)
> A B C D
> 2013-01-01 0 NaN 2.0 3
> 2013-01-02 4 5.0 NaN 7
> 2013-01-03 8 9.0 10.0 11
> 2013-01-04 12 13.0 14.0 15
> 2013-01-05 16 17.0 18.0 19
> 2013-01-06 20 21.0 22.0 23
print(df.dropna(axis=0, how='all')) # how={'any', 'all'}
> A B C D
> 2013-01-01 0 NaN 2.0 3
> 2013-01-02 4 5.0 NaN 7
> 2013-01-03 8 9.0 10.0 11
> 2013-01-04 12 13.0 14.0 15
> 2013-01-05 16 17.0 18.0 19
> 2013-01-06 20 21.0 22.0 23
print(df.dropna(axis=0, how='any')) # how={'any', 'all'}
> A B C D
> 2013-01-03 8 9.0 10.0 11
> 2013-01-04 12 13.0 14.0 15
> 2013-01-05 16 17.0 18.0 19
> 2013-01-06 20 21.0 22.0 23
print(df.fillna(value=0))
> A B C D
> 2013-01-01 0 0.0 2.0 3
> 2013-01-02 4 5.0 0.0 7
> 2013-01-03 8 9.0 10.0 11
> 2013-01-04 12 13.0 14.0 15
> 2013-01-05 16 17.0 18.0 19
> 2013-01-06 20 21.0 22.0 23
print(pd.isnull(df))
> A B C D
> 2013-01-01 False True False False
> 2013-01-02 False False True False
> 2013-01-03 False False False False
> 2013-01-04 False False False False
> 2013-01-05 False False False False
> 2013-01-06 False False False False
print(np.any(df.isnull()) == True)
> True
END
pandas 4 处理缺失数据nan的更多相关文章
- 利用Python进行数据分析(10) pandas基础: 处理缺失数据
数据不完整在数据分析的过程中很常见. pandas使用浮点值NaN表示浮点和非浮点数组里的缺失数据. pandas使用isnull()和notnull()函数来判断缺失情况. 对于缺失数据一般处理 ...
- Pandas汇总和处理缺失数据
汇总的函数 方法 说明 count 非NA的值数量 describe 针对Series和DataFrame列计算汇总统计 min.max 计算最小值和最大值 argmin.argmax 计算能够获取到 ...
- Pandas之Dropna滤除缺失数据
import pandas as pd import numpy as np from numpy import nan as NaN 一.处理Series对象 通过dropna()滤除缺失数据 fr ...
- pandas(五)处理缺失数据和层次化索引
pandas用浮点值Nan表示浮点和非浮点数组中的缺失数据.它只是一个便于被检测的标记而已. >>> string_data = Series(['aardvark','artich ...
- pandas知识点(处理缺失数据)
pandas使用浮点值NaN表示浮点和非浮点数组中的缺失数据: In [14]: string_data = Series(['aardvark','artichoke',np.nan,'avocad ...
- 利用Python进行数据分析-Pandas(第五部分-数据规整:聚合、合并和重塑)
在许多应用中,数据可能分散在许多文件或数据库中,存储的形式也不利于分析.本部分关注可以聚合.合并.重塑数据的方法. 1.层次化索引 层次化索引(hierarchical indexing)是panda ...
- 实操 | 内存占用减少高达90%,还不用升级硬件?没错,这篇文章教你妙用Pandas轻松处理大规模数据
注:Pandas(Python Data Analysis Library) 是基于 NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.此外,Pandas 纳入了大量库和一些标准的数据模型 ...
- 小白学 Python 数据分析(8):Pandas (七)数据预处理
人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...
- 小白学 Python 数据分析(12):Pandas (十一)数据透视表(pivot_table)
人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...
随机推荐
- Day 04 [与用户交互,格式化输出,基本运算符]
Python 的与用户交互 name=input("请输入姓名:") height=input('请输入身高:') weight=input('请输入体重:') 在python3中 ...
- why updating the Real DOM is slow, what is Virtaul DOM, and how updating Virtual DOM increase the performance?
个人翻译: Updating a DOM is not slow, it is just like updating any JavaScript object; then what exactly ...
- ES6 学习6 数组的扩展
本章学习要点: 扩展运算符 Array.from() Array.of() 数组实例的 copyWithin() 数组实例的 find() 和 findIndex() 数组实例的 fill() 数组实 ...
- IDEA快速搭建 SpringCloud 注册中心与
第一步:创建 注册中心(eureka)项目 按照以下步骤一步一步来(只是对于IDEA的初学者来说) (我这里选择maven项目.比较方便) 给注册中心项目 取上可爱的名称 第二步配置 eureka的p ...
- Python socket通信之FTP
Python中利用socket进行server端和client端通信是网络编程的基础,是最简单的传输范例. (懂网络的请自动跳过这一部分) 首先,要想通信,必须建立连接,建立连接的过程,需要clien ...
- [剑指offer] 1. 二维数组中的查找 (数组)
注意是有序数组!! 思路: 1.利用二维数组由上到下,由左到右递增的规律,选取右上角或者左下角的元素a[m][n]与target进行比较, 当target小于元素a[m][n]时,那么target必定 ...
- Django REST Framework 序列化和校验 知识点
DRF序列化 Django ORM对象 --> JSON格式的数据 序列化 JSON格式的数据 --> Django ORM数据 反序列化 需要两个工具: from rest_framew ...
- poj 3420 Quad Tiling (状压dp+多米诺骨牌问题+矩阵快速幂)
还有这种操作?????? 直接用pre到now转移的方式构造一个矩阵就好了. 二进制长度为m,就构造一个长度为1 << m的矩阵 最后输出ans[(1 << m) - 1][( ...
- 异构关系数据库(Sqlserver与Oracle)之间的数据类型转换参考
一.Oracle到SqlServer的数据类型的转变 编号 Oracle ToSqlServer SqlServer 1 BINARY_DOUBLE VARCHAR(100) real 2 BINAR ...
- 洛谷 P2243 电路维修
P2243 电路维修 题目背景 Elf 是来自Gliese 星球的少女,由于偶然的原因漂流到了地球上.在她无依无靠的时候,善良的运输队员Mark 和James 收留了她.Elf 很感谢Mark和Jam ...