python中数据清洗_dropon

python中数据清洗_dropon实际应用中,在得到原始数据时,经常碰到数据缺失问题,对数据进行加工或清洗就非常有必要了importnumpyasnpfromnumpyimportnanimportpandasaspddata=pd.DataFrame(np.arange(3,19,1).reshape(4,4),index=list(‘abcd’))print(data)print(data.i…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

实际应用中,在得到原始数据时,经常碰到数据缺失问题,对数据进行加工或清洗就非常有必要了

import numpy as np
from numpy import nan
import pandas as pd
data=pd.DataFrame(np.arange(3,19,1).reshape(4,4),index=list('abcd'))
print(data)
print(data.isnull())   ### 查看data是否有缺失值(空值),False无缺失值
pritn(data.notnull())  ### 查看data是否有缺失值(空值),True无缺失值
输出结果:
    0   1   2   3
a   3   4   5   6
b   7   8   9  10
c  11  12  13  14
d  15  16  17  18
       0      1      2      3
a  False  False  False  False
b  False  False  False  False
c  False  False  False  False
d  False  False  False  False
      0     1     2     3
a  True  True  True  True
b  True  True  True  True
c  True  True  True  True
d  True  True  True  True
print(data.drop('a'))        ### 默认参数axis=0,根据索引(index)删除指定的行
print(data.drop(1,axis=1)    ### axis=1,根据列名(columns)删除指定的列
    0   1   2   3
b   7   8   9  10
c  11  12  13  14
d  15  16  17  18
    0   2   3
a   3   5   6
b   7   9  10
c  11  13  14
d  15  17  18
print(data.drop(index=list('ac')))         ### 删除索引为‘ac’这2行,或print(data.drop(index=['a','c']))
print(data.drop([1,3],axis=1))             ### 删除列名为‘13’这2列
    0   1   2   3
b   7   8   9  10
d  15  16  17  18
    0   2
a   3   5
b   7   9
c  11  13
d  15  17
data.iloc[0:2,0:3]=nan  ### 取data前2行和前3列为空值
print(data)
print(data.isnull())    ### True为有缺失值
      0     1     2   3
a   NaN   NaN   NaN   6
b   NaN   NaN   NaN  10
c  11.0  12.0  13.0  14
d  15.0  16.0  17.0  18
       0      1      2      3
a   True   True   True  False
b   True   True   True  False
c  False  False  False  False
d  False  False  False  False
print(data.dropna())  ### 默认axis=0,how='any',删除带有空值的行,只要有一个空值,就删除整行
      0     1     2   3
c  11.0  12.0  13.0  14
d  15.0  16.0  17.0  18
print(data.dropna(axis=1)) ### axis=1,删除带有空值的列,只要有一个空值,就删除整列
    3
a   6
b  10
c  14
d  18
data=pd.DataFrame(np.arange(3,19,1).reshape(4,4),index=list('abcd'))
print(data)
data.iloc[0:1,:]=nan
data[3]=nan
print(data)
      0     1     2   3
a   NaN   NaN   NaN NaN
b   7.0   8.0   9.0 NaN
c  11.0  12.0  13.0 NaN
d  15.0  16.0  17.0 NaN
print(data.dropna(how='all'))       ### 整行都是空值时,才会被删除
      0     1     2   3
b   7.0   8.0   9.0 NaN
c  11.0  12.0  13.0 NaN
d  15.0  16.0  17.0 NaN
print(data.dropna(how='all',axis=1))    ### 整列都是空值时,才会被删除
      0     1     2
a   NaN   NaN   NaN
b   7.0   8.0   9.0
c  11.0  12.0  13.0
d  15.0  16.0  17.0
### thresh,设定阈值,缺失值个数大于该阈值,整行(axis=0)或整列(axis=1)才会被删除

print(data.dropna(thresh=2)) ### thresh=2,缺失值个数大于2,该行才会被删
      0     1     2   3
c  11.0  12.0  13.0  14
d  15.0  16.0  17.0  18
print(data.dropna(subset=[1,2]))  ### 删除指定列中包含缺失值的行
      0     1     2   3
c  11.0  12.0  13.0  14
d  15.0  16.0  17.0  18

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192632.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux makefile 教程 很具体,且易懂

    Linux makefile 教程 很具体,且易懂

    2021年12月1日
    35
  • mysql中grant权限_mysql外网访问权限

    mysql中grant权限_mysql外网访问权限mysql访问权限GRANT ALL PRIVILEGES ON,访问权限表

    2022年4月20日
    72
  • spring ioc源码解析_spring事务源码深度解析

    spring ioc源码解析_spring事务源码深度解析SpringApplication源码解析运行SpringApplication的方式在创建SpringBoot应用,我们经常看到SpringApplication.run(ApplicationConfiguration.class,args);那有没有其他方式可以运行SpringApplication,答案是有的。我们可以通过自定义SpringApplication来实现Sprin…

    2022年9月9日
    0
  • Visual Studio 2019 集成CefSharp[通俗易懂]

    Visual Studio 2019 集成CefSharp[通俗易懂]1.点击“引用”,右键”管理Nuget程序包”,搜索框里输入”CefSharp”,选择”CefSharp.WinForms”,安装。这样就会自动把CefSharp需要的拓展给安装齐全了,之后在解决方案的packages目录里会有4个文件夹cef.redist.x64.版本号,cef.redist.x86.版本号,CefSharp.Common.版本号,CefSharp.WinForms.版本号。2.使用代码:usingCefSharp.WinForms;usingMicrosoft

    2022年9月16日
    0
  • 判断MOS管好坏的方法有两种

    判断MOS管好坏的方法有两种  第一种:定性判断MOS管的好坏  先用万用表R×10kΩ挡(内置有9V或15V电池),把负表笔(黑)接栅极(G),正表笔(红)接源极(S)。给栅、源极之间充电,此时万用表指针有轻微偏转。再改用万用表R×1Ω挡,将负表笔接漏极(D),正笔接源极(S),万用表指示值若为几欧姆,则说明MOS管是好的。  第二种:定性判断结型MOS管的电极  将万用表拨至R×10…

    2022年6月15日
    47
  • LoadRunner压力测试:测试报告结果分析

    LoadRunner压力测试:测试报告结果分析我们以测试场景“登录-退出”为例,对测试报告的结果进行分析说明。一、测试说明功能登录退出测试目的进行用户登录,评估服务器增长能力场景说明打开登录首页,用户名登录;进入登录后首页页面,点击退出登录事务说明用户登录动态数据说明登录用户名/登

    2022年7月18日
    22

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号