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 ...
随机推荐
- 并发编程——全局解释器锁GIL
1.全局解释器锁GIL GIL其实就是一把互斥锁(牺牲了效率但是保证了数据的安全). 线程是执行单位,但是不能直接运行,需要先拿到python解释器解释之后才能被cpu执行 同一时刻同一个进程内多个线 ...
- 加减法计算器-java
由于经常进行较大数据的加减法计算,好多计算器都是转换成科学技术法的,所以自己用java写了一个 功能如下: 1,可以输入多个带千位分隔符的数字,进行加减法计算 2,结果展示带千位分隔符 3,结果展示不 ...
- 三、frpc 完整配置文件
# [common] is integral section [common] # A literal address or host name for IPv6 must be enclosed # ...
- [LeetCode] 350. 两个数组的交集 II intersection-of-two-arrays-ii(排序)
思路: 先找到set的交集,然后分别计算交集中的每个元素在两个原始数组中出现的最小次数. class Solution(object): def intersect(self, nums1, nums ...
- ASP.NET-viewBag Viewdata Tempdata
ASP.NET MVC提供3种选择ViewData,ViewBag,TempData来从controller到View及后续请求传输数据. ViewData和ViewBag很相似,而TempData有 ...
- jquery访问ashx文件示例
转自原文jquery访问ashx文件示例 .ashx 文件用于写web handler的..ashx文件与.aspx文件类似,可以通过它来调用HttpHandler类,它免去了普通.aspx页面的控件 ...
- vue中export default 在console中是this.$vm
vue中export default 在console中是this.$vm 用vue-cli搭出框架,用webstorm进行开发,参考vue2的官网进行教程学习, 在vue-cli中是用es6的exp ...
- pat(A) 1066. Root of AVL Tree
代码: #include<iostream> #include<cstdio> #include<cmath> #include<stdlib.h> # ...
- hdu1213 How Many Tables(并查集)
How Many Tables Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- C++字符串操作笔试题第二波
//1.字符串替换空格:请实现一个函数,把字符串中的每一个空格替换成"%20". //比如输入"we are happy.".则输出"we%20are ...