一.缺失值

sklearn中的preprocessing下有imputer,可进官方文档参考。这里主讲pandas。

拿到数据,一般先检查是否有缺失值,用isnul()或notnull().

再决定dropna(),还是fillna()。

1.1 检查是否有缺失值 isnull()、notnull()

import pandas as pd
import numpy as np
df = pd.DataFrame({"col_1":[1, 2, 3, 666, 1480],
"col_2":[125, 999, 110, np.nan, 300],
"col_3":[1389, np.nan, np.nan, np.nan, 0]})
df

.dataframe thead tr:only-child th {
text-align: right;
}

.dataframe thead th {
text-align: left;
} .dataframe tbody tr th {
vertical-align: top;
}
col_1 col_2 col_3
0 1 125.0 1389.0
1 2 999.0 NaN
2 3 110.0 NaN
3 666 NaN NaN
4 1480 300.0 0.0
df.isnull()    #询问每一个值是不是为NaN.

.dataframe thead tr:only-child th {
text-align: right;
}

.dataframe thead th {
text-align: left;
} .dataframe tbody tr th {
vertical-align: top;
}
col_1 col_2 col_3
0 False False False
1 False False True
2 False False True
3 False True True
4 False False False
df.notnull()   #询问每一个值是不是不为NaN,跟上面的相反就是了

.dataframe thead tr:only-child th {
text-align: right;
}

.dataframe thead th {
text-align: left;
} .dataframe tbody tr th {
vertical-align: top;
}
col_1 col_2 col_3
0 True True True
1 True True False
2 True True False
3 True False False
4 True True True

1.2 假设要删除缺失值dropna()

考虑如何删,删行?删列?还是缺失多少个才删?

DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)

  • axis:决定删行删列,默认axis=0,删行;删列要修改axis=1.
  • how:决定怎么删,至少有一个NaN就删,还是全是NaN才删。default "any",只要有NA,马上删掉该行或该列。"all",全是NA时才删掉这一行或一整列。
  • thresh : 设置该行或列至少有多少个非NA值才能保留下来,有点拗口。输入整数,这个参数有必要才设置,没有就不用管。
  • subset : array-like, optional

    Labels along other axis to consider, e.g. if you are dropping rows these would be a list of columns to include.
  • inplace : 是否直接取代原数据框,默认False,所以我们真要除去行列,会inplace=True,或者给它新赋值到一个变量中。
df.dropna()

.dataframe thead tr:only-child th {
text-align: right;
}

.dataframe thead th {
text-align: left;
} .dataframe tbody tr th {
vertical-align: top;
}
col_1 col_2 col_3
0 1 125.0 1389.0
4 1480 300.0 0.0

ing~~~

Pandas 数据清洗常用篇的更多相关文章

  1. pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)

    pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...

  2. python重要的第三方库pandas模块常用函数解析之DataFrame

    pandas模块常用函数解析之DataFrame 关注公众号"轻松学编程"了解更多. 以下命令都是在浏览器中输入. cmd命令窗口输入:jupyter notebook 打开浏览器 ...

  3. pandas模块常用函数解析之Series(详解)

    pandas模块常用函数解析之Series 关注公众号"轻松学编程"了解更多. 以下命令都是在浏览器中输入. cmd命令窗口输入:jupyter notebook 打开浏览器输入网 ...

  4. pandas中常用的操作一

    pandas中常用的功能: 1.显示所有的列的信息,999表示显示最大的列为999 pd.options.display.max_columns=999 2.读取excel时设置使用到列的名称,和列的 ...

  5. pandas数据清洗策略1

    Pandas常用的数据清洗5大策略如下: 1.删除 DataFrame 中的不必要 columns 2.改变 DataFrame 的 index 3.使用 .str() 方法来清洗 columns 4 ...

  6. 2.pandas数据清洗

    pandas是用于数据清洗的库,安装配置pandas需要配置许多依赖的库,而且安装十分麻烦. 解决方法:可以用Anaconda为开发环境,Anaconda内置了许多有关数据清洗和算法的库. 1.安装p ...

  7. pandas的常用函数

    1.DataFrame的常用函数: (1)np.abs(frame) 绝对值, (2)apply function, lambda f= lambda x: x.max()-x.min(),frame ...

  8. Pandas库常用函数和操作

    1. DataFrame 处理缺失值  dropna() df2.dropna(axis=0, how='any', subset=[u'ToC'], inplace=True) 把在ToC列有缺失值 ...

  9. LaTeX常用篇(一)---公式输入

    目录 1. 序言 2. 命令介绍 3. 公式输入 3.1 无编号公式 3.2 有编号公式 更新时间:2019.10.02 1. 序言   当我们首次在文档中输入公式的时候,我们首先想到的是word,毕 ...

随机推荐

  1. 在 ASP.NET Core 中集成 Skywalking APM

    前言 大家好,今天给大家介绍一下如何在 ASP.NET Core 项目中集成 Skywalking,Skywalking 是 Apache 基金会下面的一个开源 APM 项目,有些同学可能会 APM ...

  2. ng6.1 新特性:滚回到之前的位置

    在之前的版本中滚动条位置是一个大问题,主要表现在 1. 使用快捷键或者手势前进/后退的时候,滚动条的位置经常是错乱的,所以只能每个页面都要重置一个滚动条的位置: 2. #anchor1 锚点位置无法定 ...

  3. 两个inline-block中间有空白,解决inline-block 元素之间的空白问题

    目录 一.遇到的问题 二.举个简单的栗子分析问题 三.解决办法 一.遇到的问题 前些天写瀑布流布局的时候,发现明明计算好了宽度使得一行能放下三张图片,实际效果却总是放不下,图片会挤到下一行去.上图: ...

  4. Hadoop系列005-Hadoop运行模式(下)

    本人微信公众号,欢迎扫码关注! Hadoop运行模式(下) 2.3.完全分布式部署Hadoop 1)分析: 1)准备3台客户机(关闭防火墙.静态ip.主机名称) 2)安装jdk 3)配置环境变量 4) ...

  5. javascript权威指南笔记[6-8]

    1.三类对象,两类属性 2.原型链只有在查询的时候才会体现 3.对象属性访问 4.属性赋值 5.delete只是断开属性和宿主对象的关系,不会去操作属性中的属性 6.Object.ke() var m ...

  6. 【视频】Entity Framework Core 2.* 入门教程

    视频专辑在B站上:https://www.bilibili.com/video/av34462368/ 内容暂时如下,还在更新中: 1. 简介 & 创建Model,生成数据库 2. 在ASP. ...

  7. 使用nvm管理node不同版本,安装,环境配置,切换不同版本的node版本

    文章包含以下内容: 一.下载地址 二.nvm-noinstall.zip安装 三.nvm-setup.zip安装 四.测试安装以及使用 一.下载地址 https://github.com/coreyb ...

  8. python学习第九讲,python中的数据类型,字符串的使用与介绍

    目录 python学习第九讲,python中的数据类型,字符串的使用与介绍 一丶字符串 1.字符串的定义 2.字符串的常见操作 3.字符串操作 len count index操作 4.判断空白字符,判 ...

  9. 痞子衡嵌入式:串口调试工具Jays-PyCOM诞生记 - 索引

    大家好,我是痞子衡,是正经搞技术的痞子.本系列痞子衡给大家介绍的是串口调试工具Jays-PyCOM诞生. 串口调试助手是嵌入式开发里非常常用的小工具,市面上有非常多流行的串口调试工具,比如TeraTe ...

  10. 浅谈基于Linux的Redis环境搭建

    本篇文章主要讲解基于Linux环境的Redis服务搭建,Redis服务配置.客户端访问和防火强配置等技术,适合具有一定Linux基础和Redis基础的读者阅读. 一  Redis服务搭建 1.在根路径 ...