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 ...
随机推荐
- P3387 【模板】缩点 && P3388 【模板】割点(割顶)
Tarjan算法 应用: 有向图的强连通分量 无向图割点和桥 双连通分量 接下来主要谈论前面两者的应用(主要是第三种还没学会) 算法简要介绍 我们需要先理解一下知识:搜索树 有向图的搜索树的4种边,如 ...
- Day 01 计算机编程基础
1.编程语言是什么? 编程语言是人与计算机交流的介质 2.什么是编程? 用编程语言写出一个个文件,这堆文件会达到一个目的 3.编程有什么用? 让计算机帮助我们干活,从而解放人类劳动力 4.计算机组成原 ...
- 注解实战Beforeclass和Afterclass
package com.course.testng;import org.testng.annotations.*; public class BasicAnnotation { //最基本的注解,用 ...
- HDU 1348 Wall ( 凸包周长 )
链接:传送门 题意:给出二维坐标轴上 n 个点,这 n 个点构成了一个城堡,国王想建一堵墙,城墙与城堡之间的距离总不小于一个数 L ,求城墙的最小长度,答案四舍五入 思路:城墙与城堡直线长度是相等的, ...
- BZOJ 1576 [USACO]安全路经Travel (树剖+线段树)
题目大意: 给你一张无向图,求1到其他节点 不经过最短路的最后一条边 的最短路长度,保证每个节点的最短路走法唯一 神题,$USACO$题目的思维是真的好 先$dijkstra$出最短路树 对于每个节点 ...
- NOI 2015 品酒大会 (后缀数组+并查集)
题目大意:略 40分暴力还是很好写的,差分再跑个后缀和 和 后缀最大值就行了 一种正解是后缀数组+并查集 但据说还有后缀数组+单调栈的高端操作蒟蒻的我当然不会 后缀数组求出height,然后从大到小排 ...
- V4L2框架分析学习
1.概述 Video4Linux2是Linux内核中关于视频设备的内核驱动框架,为上层的访问底层的视频设备提供了统一的接口.凡是内核中的子系统都有抽象底层硬件的差异,为上层提供统一的接口和提取出公共代 ...
- python基础知识部分练习大全
python基础知识部分练习大全 1.执行 Python 脚本的两种方式 答:1.>>python ../pyhton.py 2. >>python.py #必须在首行 ...
- Intellij idea 自动完成的变量名称首字母变为小写
Intellij idea 自动完成的变量名称首字母变为小写 好像没有什么好的自动办法,自己输入一个小写的字母吧,然后Idea会出提示.
- HDU 5416 CRB and Tree (2015多校第10场)
欢迎參加--每周六晚的BestCoder(有米!) CRB and Tree Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536 ...