我们都知道pandas 是一款功能强大的python库,基于Numpy,支持高性能的矩阵运算,通常在数据挖掘和数据分析领域应用较多,但是pandas 数据清洗功能也不能忽视,今天小编就为大家分享pandas是如何检测和处理缺失数据的。
一、缺失值是什么?
缺失值是指粗糙数据中由于缺少信息而造成的数据的聚类、分组、删失或截断。它指的是现有数据集中某个或某些属性的值是不完全的。通常按照数据缺失机制,可分为以下几种:
1.可忽略的缺失
(1)完全随机缺失 MCAR全称:missing completely at random,顾名思义,指的是数据的缺失是随机的,与已观察到的和未观察到的数据无关
(2)随机缺失MAR,全称:missing at random,该类数据的缺失依赖于其他完全变量
2.不可忽略的缺失NIM(全称:non-ignorable missing ) 或者非随机缺失,这种数据的缺失既依赖于完全变量又依赖于不完全变量本身
二、判断是否有缺失值
1.创建数据
import pandas as pd
import numpy as np
data = pd.DataFrame({'a': [1. 2. 4. np.nan,7. 9], 'b': ['a', 'b', np.nan, np.nan, 'd', 'e'], 'c': [np.nan, 0. 4. np.nan, np.nan, 5], 'd': [np.nan, np.nan, np.nan, np.nan, np.nan, np.nan]})
a b c d
0 1.0 a NaN NaN
1 2.0 b 0.0 NaN
2 4.0 NaN 4.0 NaN
3 NaN NaN NaN NaN
4 7.0 d NaN NaN
5 9.0 e 5.0 NaN
2.判断是否有缺失值及统计
print(data.isnull().any())
a True
b True
c True
d True
print(data.isnull().sum()) #t统计每一列的缺失值个数
a 1
b 2
c 3
d 6
1.删除;
pandas缺失值处理最原始的方法,pandas删除缺失值,通常通过dropna的方法,使用dropna的前提是,缺失值的类型必须是np.nan
删除缺失值为np.nan的所在行
movie.dropna()
参数说明:
axis 参数用于控制行或列,跟其他不一样的是,axis=0 (默认)表示操作行,axis=1 表示操作列。
how 参数可选的值为 any(默认) 或者 all。any 表示一行/列有任意元素为空时即丢弃,all 一行/列所有值都为空时才丢弃。
subset 参数表示删除时只考虑的索引或列名。
thresh参数的类型为整数,它的作用是,比如 thresh=3.会在一行/列中至少有 3 个非空值时将其保留。
2.填充。
最常见的是使用 fillna 完成填充。
data.fillna(0)
除了可以使用标量来填充之外,还可以使用前一个或后一个有效值来填充。
设置参数 method=‘pad’ 或 method=‘ffill’ 可以使用前一个有效值来填充。
设置参数 method=‘bfill’ 或 method=‘backfill’ 可以使用后一个有效值来填充。
3.替换。
有时候,某些异常值也会被当做缺失值来处理,可以使用 replace 方法来替换缺失值。
比如: user_info.replace({“age”: 40. “birth”: pd.Timestamp(“1978-08-08”)}, np.nan) #将年龄40替换 日期为1978-08-08也替换
数据分析咨询请扫描二维码
大数据分析师证书 针对不同知识,掌握程度的要求分为【领会】、【熟知】、【应用】三个级别,考生应按照不同知识要求进行学习。 ...
2024-10-29拥抱数据分析的世界 - 成为一名数据分析工程师是一个充满挑战和机遇的职业选择。要成功地进入这个领域,你需要掌握一系列关键技 ...
2024-10-28降本增效:管理战略的关键 企业管理中的降本增效不仅是一项重要的战略举措,更是激发竞争力、提高盈利能力的关键。这一理念在当 ...
2024-10-28企业数字化是指利用数字技术和信息化手段,对企业的各个方面进行改造和优化,以提升生产效率、服务质量和市场竞争力的过程。实现 ...
2024-10-28数据科学专业毕业后,毕业生可以选择从事多种不同的岗位和领域。数据科学是一个快速发展且广泛应用的领域,毕业生在企业、学术界 ...
2024-10-28学习数据科学与大数据技术是当今职业发展中至关重要的一环。从基础到高级,以下是一些建议的课程路径: 基础课程: Python编程 ...
2024-10-28在信息技术和数据科学领域,数据架构师扮演着至关重要的角色。他们负责设计和管理企业中复杂的数据基础设施,以支持数据驱动的决 ...
2024-10-28进入21世纪以来,随着信息技术的迅猛发展,大数据已经成为全球最具影响力的技术之一,并成为企业数字化转型的核心驱动力。大数据 ...
2024-10-28随着科技的迅猛发展,数字化转型已成为现代企业保持竞争力和推动增长的关键战略之一。数字化不仅仅是技术的应用,它代表着一种全 ...
2024-10-28银行业正处于一个前所未有的数字化转型时期。在数字经济的驱动下,金融科技如大数据、人工智能、生物识别、物联网和云计算等技术 ...
2024-10-28数据分析可视化是一门艺术与科学相结合的技术,其主要目标是将复杂的数据变得更易于理解和分析。通过将数据以图表的形式呈现,我 ...
2024-10-28数据分析师在现代信息密集型的商业世界中扮演着至关重要的角色。他们通过专业的技能和敏锐的商业洞察力,帮助企业从大量数据中提 ...
2024-10-28在当今快速发展的数据驱动世界中,数据专员的角色变得愈发重要。无论是在企业决策、市场分析还是产品开发中,数据专员都扮演着不 ...
2024-10-27在当今迅速发展的科技时代,数字化对企业的意义无比深远。它不仅提升了企业的竞争力和运营效率,还显著改善了客户体验,推动了企 ...
2024-10-27企业数字化转型是一个全方位的变革过程,旨在通过应用新兴数字技术,重新设计企业的业务流程、组织结构、产品和服务,以在竞争激 ...
2024-10-27数据挖掘是一种集成了统计学、人工智能和机器学习等多种技术的过程,其主要目标是从大量数据中提取有价值的信息和知识。通过分析 ...
2024-10-27数字经济是一种新型的经济形态,以数字技术为基础,通过数据的获取、存储、加工、传输和应用进行经济发展。其核心在于利用数字化 ...
2024-10-27数据科学无疑是现代数字化社会的中流砥柱。随着大数据和人工智能技术的持续飞跃,各行各业对具备数据分析和管理能力的人才需求呈 ...
2024-10-25在当今快速发展的商业环境中,数字化转型已经成为企业保持竞争力和促进业务增长的必然选择。数字化转型不仅意味着技术的变革,更 ...
2024-10-25在当今数据驱动的商业环境中,数据分析已经成为企业决策过程中的核心要素。企业需要处理海量数据,从中提炼出有价值的见解,以支 ...
2024-10-25