广告
返回顶部
首页 > 资讯 > 精选 >如何使用pandas或numpy处理数据中的空值
  • 644
分享到

如何使用pandas或numpy处理数据中的空值

2023-06-15 01:06:53 644人浏览 八月长安
摘要

这篇文章主要介绍如何使用pandas或numpy处理数据中的空值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.关于np.nan:先明确一个问题,即空值的产生只有np.nan()一种方法。# np.nan

这篇文章主要介绍如何使用pandas或numpy处理数据中的空值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1.关于np.nan:

先明确一个问题,即空值的产生只有np.nan()一种方法。

# np.nan()的一些奇妙性质: np.nan == np.nan>>> False np.isnan(np.nan)>>> True np.nan is None>>> False type(np.nan)>>> float

总结一下:

np.nan不是一个“空”对象,用 i is None判断是False;

对某个值是否为空值进行判断,只能用np.isnan(i)函数,万万不可用 i == np.nan()来做,否则你会死的很惨的,因为空值并不能用判断相等的“==”正确识别(上例前两条);

np.nan非空对象,其类型为基本数据类型float(是不是很神奇,我也不知道为什么要这样设计)

2.np.isnan()和pd.isnull()何时使用:

# 首先创建一个DataFrame:bb = pd.DataFrame({'a':[0,1,2,np.nan]})bb >>>     a    0 0.0    1 1.0    2 2.0    3 NaN # 先测试一下np.isnan()np.isnan(bb)>>>     a    0 False    1 False    2 False    3 True# 值得一提的是,如果想获悉整个DataFrame有无空值,可以在此基础上这样做: np.isnan(bb).all()>>> a    False    dtype: bool          # 这行是指返回值的dtype # 再测试一下isnull()pd.isnull(bb)>>>     a    0 False    1 False    2 False    3 True

由上可见,其实np.isnan()和pd.isnull()都可以对不论是DataFrame、python list还是仅仅一个数值进行空值检测。但一般在实际应用中,np.isnan()多用于单个值的检验,pd.isnull()用于对一个DataFrame或Series(整体)的检验。

此外,根据pandas官方文档和源代码,pandas提供的另一个函数pd.isna()与pd.isnull()完全一样。

上面提到的any()/all()函数,请见pandas文档:

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.all.html#pandas.DataFrame.all

Https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.any.html#pandas.DataFrame.any

其他与空值检测或删除相关的函数还有:notna()、fillna()、dropna()等等。实战中应灵活使用。

补充:numpy中的nan(判断一个元素等于nan, 及nan安全函数 )

Nunpy中的NaN

多种方式创建nan(空值)

import numpy as npnp.nannannp.NaNnannp.NANnan

判断是否存在空值

x = np.array([1, 1, 8, np.nan, 10])np.nan in xFalsenp.isin(np.nan, x)array(False)1 in xTruenp.isin(1, x)array(True)np.isnan(x)array([False, False, False,  True, False])x[-2] == np.nan, np.isnan(x[-2])(False, True)

在np中nan需要用isnan这个函数来识别,还要注意:

xarray([ 1.,  1.,  8., nan, 10.])

x 中所有的元素都变成了浮点型,这是因为nan是浮点型的。

nan安全函数

np.mean(x)nannp.nanmean(x)5.0

此外max, min, median等都是默认非nan安全的,需要加上nan来标记nan安全。

ps:pandas中是默认nan安全的。

补充:Python 处理DataFrame数据 pd.isnull() np.isnan()的方式

数据处理时,经常会遇到处理数据中的空值,涉及几个常用函数,pd.isnull(),pd.notnull(),np.isnan(),pd.notna(),pd.isna(),pd.fillna()、pd.dropna()等等.

本文关注pd.isnull(),pd.notnull(),np.isnan(),pd.notna(),pd.isna()。

总结:

由下可知,np.isnan()和pd.isnull()都可以对不论是DataFrame、Python list还是仅仅一个数值进行空值检测。但一般在实际应用中,np.isnan()多用于单个值的检验,pd.isnull()用于对一个DataFrame或Series(整体)的检验。

1.pd.isnull()

pd.isnull()可以对不论是DataFrame、Python list还是仅仅一个数值进行空值检测。但一般在实际应用中,pd.isnull()用于对一个DataFrame或Series(整体)的检验。

此外,根据pandas官方文档和源代码,pandas提供的另一个函数pd.isna()与pd.isnull()完全一样。

# 首先创建一个DataFrame:df = pd.DataFrame({'a':[0,1,2,np.nan]})df >>>     a    0 0.0    1 1.0    2 2.0    3 NaN # 测试isnull()pd.isnull(df)>>>     a    0 False    1 False    2 False    3 True # 测试isna()pd.isna(df)>>>     a    0 False    1 False    2 False    3 True # 测试notnull()pd.notnull(df)>>>     a    0 True    1 True    2 True    3 False # 测试notna()pd.notna(df)>>>     a    0 True    1 True    2 True    3 False

2.np.nan()

判断是否为np.nan()。

np.nan不是一个“空”对象,对某个值是否为空值进行判断,只能用np.isnan(i)函数。

np.nan非空对象,其类型为基本数据类型float。

np.nan()可以对不论是DataFrame、Python list还是仅仅一个数值进行空值检测。但一般在实际应用中,np.nan()多用于单个值的检验。

np.nan == np.nan>>> False np.isnan(np.nan)>>> True type(np.nan)>>> float np.nan is None>>> False np.isnan(df)>>>     a    0 False    1 False    2 False    3 True

以上是“如何使用pandas或numpy处理数据中的空值”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 如何使用pandas或numpy处理数据中的空值

本文链接: https://www.lsjlt.com/news/276737.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用pandas或numpy处理数据中的空值
    这篇文章主要介绍如何使用pandas或numpy处理数据中的空值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.关于np.nan:先明确一个问题,即空值的产生只有np.nan()一种方法。# np.nan...
    99+
    2023-06-15
  • 使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
    最近在做数据处理的时候,遇到个让我欲仙欲死的问题,那就是数据中的空值该如何获取。 我的目的本来是获取数据中的所有非零且非空值,然后再计算获得到的所有数据计算均值,再用均值把0和空值填...
    99+
    2022-11-12
  • NumPy和Pandas如何一起使用来处理大型数据集?
    NumPy和Pandas是Python中最常用的数据科学库。NumPy提供了一个强大的多维数组对象,而Pandas则提供了一个用于数据操作和分析的高效数据结构。这两个库的结合可以帮助我们高效地处理大型数据集。本文将介绍如何使用NumPy和P...
    99+
    2023-09-11
    开发技术 numpy npm
  • pandas中按行或列的值对数据排序如何实现
    本文小编为大家详细介绍“pandas中按行或列的值对数据排序如何实现”,内容详细,步骤清晰,细节处理妥当,希望这篇“pandas中按行或列的值对数据排序如何实现”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。在处理...
    99+
    2023-07-05
  • 如何用 Python 和 NumPy 快速处理文件中的数值数据?
    在日常的数据处理中,我们经常需要从文件中读取数值数据,并对这些数据进行加工处理。Python 是一种十分强大的编程语言,可以用于各种数据处理任务。NumPy 是 Python 中一个非常常用的科学计算库,它提供了丰富的数值处理工具,可以帮...
    99+
    2023-11-04
    文件 关键字 numy
  • 如何在Java中使用Numpy来处理数值计算?
    Java是一门广泛使用的编程语言,在数值计算方面,Java本身的数值计算库已经相当强大,但是在一些特定的数值计算场景中,需要使用专业的数值计算库来进行更加高效的计算。其中,Numpy是一款专门用于数值计算的Python库,它提供了一系列高效...
    99+
    2023-06-14
    http numpy 索引
  • NumPy 库如何帮助 Python 处理文件中的数值数据?
    NumPy 是 Python 中最常用的科学计算库之一,它提供了高性能的多维数组对象以及相关的工具。在数据处理方面,NumPy 可以帮助我们轻松地处理文件中的数值数据,包括读取、处理和保存等操作。本文将介绍如何使用 NumPy 库来处理文...
    99+
    2023-11-04
    文件 关键字 numy
  • 如何使用Lambda来修改Pandas数据框中的值
    这篇文章主要为大家展示了“如何使用Lambda来修改Pandas数据框中的值”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用Lambda来修改Pandas...
    99+
    2022-10-19
  • 在Java中如何处理数组中的空值?
    在Java中,数组是一种常见的数据类型,它可以存储一组相同类型的数据。但是,在实际开发中,我们经常会遇到数组中存在空值的情况。这时,我们需要对数组中的空值进行处理,以确保程序的正确性和稳定性。 本文将介绍在Java中如何处理数组中的空值,包...
    99+
    2023-09-30
    数组 bash windows
  • 如何使用Java中的numpy库进行数值计算和处理?
    Java是一种广泛使用的编程语言,而Python则是一种非常流行的数据科学语言。Python中的numpy库是一个强大的数值计算和处理库,而Java也有一个名为ND4J的库,它可以实现类似的功能。在本文中,我们将介绍如何使用Java中的ND...
    99+
    2023-06-29
    二维码 api numpy
  • 如何在 Python 中使用 numpy 来处理 API 数据?
    Python 是一种流行的编程语言,广泛用于数据科学、机器学习等领域。而 numpy 是 Python 中处理数值数据的核心库之一,它提供了高效的数组操作和数学函数,使得处理大规模数据变得更加容易。在本文中,我们将介绍如何使用 numpy...
    99+
    2023-09-26
    numy api leetcode
  • Python教程中如何使用Numpy来处理数据?
    Python是一种功能强大且易于学习的编程语言,广泛用于数据科学和机器学习领域。而在Python中,Numpy是一个非常重要的库,它提供了许多用于处理数据的函数和工具。本文将介绍如何使用Numpy来处理数据。 安装Numpy 在开始使...
    99+
    2023-10-29
    教程 linux numpy
  • 如何使用Java和Unix来处理NumPy函数中的数据?
    NumPy是Python中最重要的科学计算库之一,它提供了高效的多维数组操作和数学函数,使得科学计算变得更加简单和快速。然而,有时候我们需要在Java或Unix环境下使用NumPy中的函数来处理数据。在本文中,我们将介绍如何使用Java和...
    99+
    2023-07-09
    unix numy 函数
  • 如何使用NumPy进行高效的数据处理?
    NumPy是Python科学计算的核心库,它提供了一系列高效的数据结构和算法,能够大大简化数据处理和分析的过程。在本文中,我们将介绍如何使用NumPy进行高效的数据处理。 安装NumPy 在开始使用NumPy之前,需要先安装它。可以使用...
    99+
    2023-06-17
    教程 编程算法 numy
  • 如何在PHP中使用API和Numpy来处理数据?
    在当今的数据时代,数据处理已经成为了每个企业必备的技能。PHP作为一种流行的后端编程语言,可以与各种数据处理工具集成,包括API和Numpy。本文将介绍如何使用PHP中的API和Numpy来处理数据。 一、什么是API? API是指应用程...
    99+
    2023-06-06
    api shell numpy
  • 如何在Python中使用numpy对象来处理数据?
    如果你是一个Python开发者或数据科学家,你应该已经听过NumPy。NumPy是一个用Python实现的基于数组的科学计算包,它可以让你在Python中高效地进行向量和矩阵计算。在本文中,我们将介绍如何使用NumPy来处理数据。 安装N...
    99+
    2023-07-21
    数据类型 numy 对象
  • 如何在Linux系统中使用Bash处理Numpy数据?
    在Linux系统中,Bash是一种常用的命令行解释器。而Numpy是Python中一个非常重要的科学计算库,它提供了高效的数组操作能力和广泛的数学函数库。在这篇文章中,我们将介绍如何在Linux系统中使用Bash处理Numpy数据。 一、安...
    99+
    2023-08-08
    numpy linux bash
  • 如何使用 PHP 和 NumPy 实时处理数据?
    如何使用 PHP 和 NumPy 实时处理数据? PHP 和 NumPy 是两个非常强大的工具,用于处理数据,PHP 是一种广泛使用的编程语言,而 NumPy 是一种用于数学计算的 Python 库。在本文中,我们将讨论如何使用 PHP 和...
    99+
    2023-08-04
    numy 实时 bash
  • Java 中的自然语言处理:如何使用 Numpy 处理大规模数据?
    自然语言处理(Natural Language Processing,NLP)是人工智能领域中的一个重要分支,它涉及了语言学、计算机科学和人工智能等多个领域。NLP 的主要任务是让计算机能够理解和处理人类语言,包括文字、语音和图像等不同形...
    99+
    2023-11-12
    分布式 numpy 自然语言处理
  • 如何在Python中使用numpy和django进行数据处理?
    Python是一种面向对象的编程语言,广泛用于数据处理、科学计算和Web开发等领域。其中,numpy和django是Python中非常流行的两个库,分别用于数值计算和Web开发。在本文中,我们将介绍如何在Python中使用numpy和dja...
    99+
    2023-11-01
    numpy django numy
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作