1、缺失数据的处理

1.1、判断是否为nan

isnull: 是nan为true
notnull: 不是nan为true

import pandas as pd
import numpy as npt3 = pd.DataFrame(np.arange(12).reshape(3,4), index=list("abc"), columns=list("wxyz"))
print(t3)
"""w  x   y   z
a  0  1   2   3
b  4  5   6   7
c  8  9  10  11
"""
t3.iloc[1:,:2] = np.nan
print(t3)
"""w    x   y   z
a  0.0  1.0   2   3
b  NaN  NaN   6   7
c  NaN  NaN  10  11
"""
print(pd.isnull(t3))
"""w      x      y      z
a  False  False  False  False
b   True   True  False  False
c   True   True  False  False
"""
print(pd.notnull(t3))
"""w      x     y     z
a   True   True  True  True
b  False  False  True  True
c  False  False  True  True
"""
print(t3[pd.notnull(t3["w"])])
"""w    x  y  z
a  0.0  1.0  2  3
"""

1.2、删除为nan的行 或 列

https://www.runoob.com/pandas/pandas-cleaning.html
dropna(axis=0,how=“any”, thresh=None,subset=None,inplace=False)

dropna 删除为nan 的 行或者 列 ;
axis=0 删除行 axis=1 删除列
how=“all” 全为nan 的删除, how=“any” 有一个为nan的就删除
inplace=True 就地修改,修改后直接会修改原数据,默认为 False,类似于 t3 = t3.dropna(axis=0, how=“any”)

print(t3.dropna(axis=0, how="all"))
"""w    x   y   z
a  0.0  1.0   2   3
b  NaN  NaN   6   7
c  NaN  NaN  10  11
"""
print(t3.dropna(axis=0, how="any"))
"""w    x  y  z
a  0.0  1.0  2  3
"""

1.3、为nan 填充数据

print(t3)
"""w    x   y   z
a  0.0  1.0   2   3
b  NaN  NaN   6   7
c  NaN  NaN  10  11
"""
# 填充固定数字
print(t3.fillna(10))
"""w     x   y   z
a   0.0   1.0   2   3
b  10.0  10.0   6   7
c  10.0  10.0  10  11
"""
# 填充均值
print(t3.fillna(t3.mean()))
"""w    x   y   z
a  0.0  1.0   2   3
b  0.0  1.0   6   7
c  0.0  1.0  10  11
"""
# 只对某一列 填充均值
print(t3["x"].fillna(t3["x"].mean()))
"""
a    1.0
b    1.0
c    1.0
Name: x, dtype: float64
"""
t3["x"] = t3["x"].fillna(t3["x"].mean())
print(t3)
"""w    x   y   z
a  0.0  1.0   2   3
b  NaN  1.0   6   7
c  NaN  1.0  10  11
"""
"""
算均值时 pandas 不会把 nan 的算进去
但是 nunpy 会把nan 的算进去
"""
print(np.array([[1,6,5,np.nan],[1,6,5,np.nan]]).mean())  # nan
print(np.array([[1,1,1,1],[2,2,2,2]]).mean())  # 1.5

不要随便把nan赋值为0,不然计算均值 等值时,pandas会把它计算在内
算均值时 pandas 不会把 nan 的算进去,但是 nunpy 会把nan 的算进去

1.4、清洗重复数据

https://www.runoob.com/pandas/pandas-cleaning.html

import pandas as pdperson = {"name": ['Google', 'Runoob', 'Runoob', 'Taobao'],"age": [50, 40, 40, 23]
}
df = pd.DataFrame(person)print(df.duplicated())
"""
0    False
1    False
2     True
3    False
dtype: bool
"""

删除重复数据,可以直接使用drop_duplicates() 方法。

import pandas as pdpersons = {"name": ['Google', 'Runoob', 'Runoob', 'Taobao'],"age": [50, 40, 40, 23]
}df = pd.DataFrame(persons)df.drop_duplicates(inplace = True)
print(df)
"""name  age
0  Google   50
1  Runoob   40
3  Taobao   23
"""

视频顺序错位 30–》29–》42
https://www.kaggle.com/damianpanek/sunday-eda/data

https://www.bilibili.com/video/BV1hx411d7jb?p=32

https://www.bilibili.com/video/BV1hx411d7jb?p=28
https://www.bilibili.com/video/BV1hx411d7jb?p=30
https://www.bilibili.com/video/BV1hx411d7jb?p=29
https://www.bilibili.com/video/BV1hx411d7jb?p=42
https://www.bilibili.com/video/BV1hx411d7jb?p=31

python3-pandas 缺失数据的处理相关推荐

  1. Pandas简明教程:七、Pandas缺失数据的处理(数据清洗基础)

    文章目录 1.缺失数据的类型 2.定位缺失数据 3.修改定位数据 4.批量修改缺失数据 5.数据修复的利器--插值法(`interpolate`) 本系列教程教程完整目录: 数据清洗的内容其实很丰富, ...

  2. Pandas缺失数据

    数据丢失(缺失)在现实生活中总是一个问题. 机器学习和数据挖掘等领域由于数据缺失导致的数据质量差,在模型预测的准确性上面临着严重的问题. 在这些领域,缺失值处理是使模型更加准确和有效的重点. 何时以及 ...

  3. Pandas缺失数据最快定位方式(极少代码快速实现,打死不用循环!!!!!)

    文章目录 先直接上代码 简单分析 先直接上代码 考虑下表: df = pd.DataFrame(np.random.randn(5, 3), index=['a', 'c', 'e', 'f', 'h ...

  4. Pandas 基础 (5) —— 处理缺失数据及层次化索引

    处理缺失数据 pandas 使用浮点值 NaN (Not a Number)表示浮点和非浮点数组中的缺失数据.它只是一个便于被检测出来的标记而已. In [168]: data = Series([' ...

  5. pandas plot label_数据科学| 手把手教你用 pandas 索引、汇总、处理缺失数据

    作者:Paul 编者按: pandas提供了很多常用的数学和统计方法,本文中将用十分详细的例子来具体进行介绍:另外在许多数据分析工作中,缺失数据是经常发生的,将会具体介绍如何处理缺失数据.本文十分详细 ...

  6. DataWhale组队-Pandas(下)缺失数据(打卡)

    1.缺失值概要 数据的缺失主要包括记录的缺失和记录中某个字段信息的缺失,两者都会造成分析结果的不准确,以下从缺失值产生的原因及影响扥方面展开分析. (1)缺失值产生的原因 1)有些信息暂时无法获取,或 ...

  7. python fillna,Pandas之Fillna填充缺失数据的方法

    约定: import pandas as pd import numpy as np from numpy import nan as NaN 填充缺失数据 fillna()是最主要的处理方式了. d ...

  8. 纠正Pandas中的缺失数据

    目录 介绍 查找丢失的数据元素 使用drop和dropna删除缺少的Pandas列 丢掉丢失的Pandas行 替换值 摘要 将数据加载到灵活的结构后,我们需要确定如何处理丢失和重复的数据元素. 下载C ...

  9. 字段缺失_数据科学| 手把手教你用 pandas 索引、汇总、处理缺失数据

    作者:Paul 编者按: pandas提供了很多常用的数学和统计方法,本文中将用十分详细的例子来具体进行介绍:另外在许多数据分析工作中,缺失数据是经常发生的,将会具体介绍如何处理缺失数据.本文十分详细 ...

  10. 【数据预处理】Pandas缺失的数据处理

    目录 缺少数据基础 何时/为何 数据丢失? 被视为"缺失"的值 日期时间 插入缺失数据 缺少数据的计算 Sum/Prod of Empties/Nans GroupBy中的NA值 ...

最新文章

  1. redis源码客户端和服务端通信过程
  2. 简述深度学习预训练和正则化
  3. pycharm导入自定义模块问题
  4. 95-170-046-源码-Time-Flink时间系统系列之ProcessFunction使用分析
  5. pickle.dump()和pickle.load()进行文件操作
  6. javascript 轮播图(缓存效果)详细篇
  7. python安装notebook_Jupyter Notebook环境安装
  8. 计算机硬盘使用率,硬盘占用率和速度
  9. ArcGIS操作系列5 - Arcmap 裁剪 矢量和栅格数据
  10. 【笔记整理】网络攻防技术
  11. android edittext怎么输入中文,为什么android中edittext不能输入中文
  12. 【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器
  13. 大前端时代搞定PC/Mac端开发,我有绝招
  14. dns劫持 tplink_解决路由器DNS劫持的两种方法
  15. 60行C代码的shell领略Unix哲学之美
  16. 聊聊目标检测中的多尺度检测(Multi-Scale),从YOLO,ssd到FPN,SNIPER,SSD填坑贴和极大极小目标识别
  17. SDNU 1040.导弹拦截【NOIP1999】【8月9】
  18. 海康威视多摄像头实时视频预览(基于SDK的二次开发)
  19. 前端中的icon几种用法
  20. pygame图片精灵

热门文章

  1. ConcurrentLinkedQueue常用方法
  2. Hive表 Parquet压缩 , Gzip,Snappy,uncompressed 效果对比
  3. 使用率激增 250%,这份报告再次将 Serverless 推向幕前
  4. 在Data Lake Analytics中使用视图 1
  5. 争分夺秒:阿里实时大数据技术全力助战双11
  6. 新一代数据库技术在双11中的黑科技
  7. Web 前端自学很苦?来,手把手教你,拿下前端!
  8. TigerGraph持续产品创新,发布最新的“全民图”版本
  9. SDN精华问答 | 为什么SDN要花这么长时间才被采用?
  10. 有问有答 | 容器精华问答,如何玩转容器服务?