numpy中nan_to_num的具体使用

 更新时间:2022年08月09日 09:28:32   作者:山茶花开时。  
在Numpy中NaN值一般出现在数据清洗前,出现这个值说明这个数据是缺失的,本文主要介绍了numpy中nan_to_num的具体使用,感兴趣的可以了解一下

在Numpy中NaN值一般出现在数据清洗前,出现这个值说明这个数据是缺失的

在有些时候我们会选择直接删除这些数据,但有些时候这些数据是不能删除的,这个时候我们就需要使用一些方法将np.nan值替换为指定的值 

本文主要介绍利用numpy.nan_to_num方法将np.nan值替换为指定的值

# np.nan表示该值不是一个数,比如数据中收入,年龄的缺失值
np.nan == np.nan # False

numpy.nan_to_num方法用零替换NaN(numpy.nan)

import numpy as np
in_num = np.nan
out_num = np.nan_to_num(in_num)
print("Input Number:",in_num) # Input Number: nan
print("Output Number:",out_num) # Output Number: 0.0

此外,numpy.nan_to_num方法可用最大的有限数替换无穷大(numpy.inf)

import numpy as np
Infinite_num = np.inf
Negative_Infinity_num = -np.inf
np.nan_to_num(Infinite_num) # 1.7976931348623157e+308
np.nan_to_num(Negative_Infinity_num) # -1.7976931348623157e+308
import numpy as np
data = np.array([np.inf, -np.inf, np.nan, -128, 128])
deal_data = np.nan_to_num(data)

data

deal_data 

补充资料学习 

import numpy as np
# 生成一个3行4列的数组,设定第1行,第2、3列位置两个元素为np.nan
arr = np.array([[1,2,3,4],[5,6,np.nan,np.nan],[9,10,11,12]])
 
# 问题:如何将arr中的nan替换为0?
# 方法1
for i in range(arr.shape[1]):
    col = arr[:,i]
    col[np.isnan(col)] = 0
 
# 方法2,调用np.nan_to_num方法
arr = np.nan_to_num(arr)
 
# 方法3,用np.isnan()做索引,然后替换
# 一个ndarray数组arr,可以用np.isnan(arr)定位到nan值的位置,
# 再用arr[np.isnan(t1)] = 指定值,将nan替换为指定值
arr[np.isnan(arr)] = 0

arr 

处理过后的arr 

 到此这篇关于numpy中nan_to_num的具体使用的文章就介绍到这了,更多相关numpy nan_to_num内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python复制文件的9个方法小结

    Python复制文件的9个方法小结

    本文主要介绍了Python复制文件的9个方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-01-01
  • 关于Python的一些学习总结

    关于Python的一些学习总结

    这篇文章主要介绍了关于Python的一些总结,希望自己以后在学习Python的过程中可以边学习边总结,就自己之前的学习先做以总结,之后将不断总结更新
    2018-05-05
  • 详细介绍python类及类的用法

    详细介绍python类及类的用法

    前面我们介绍了类的创建及面向对象的三大特性.本篇将详细介绍Python 类的成员,成员修饰符,类的特殊成员.需要的朋友可以参考下
    2021-05-05
  • Python序列对象与String类型内置方法详解

    Python序列对象与String类型内置方法详解

    这篇文章主要介绍了Python序列对象与String类型内置方法,结合实例形式分析了Python序列对象与String类型各种常见内置方法相关使用技巧及操作注意事项,需要的朋友可以参考下
    2019-10-10
  • 详解python itertools功能

    详解python itertools功能

    itertools是python内置的模块,使用简单且功能强大,这里尝试汇总整理下,并提供简单应用示例,这篇文章主要介绍了python itertools功能,需要的朋友可以参考下
    2020-02-02
  • python的tkinter、socket库开发tcp的客户端和服务端详解

    python的tkinter、socket库开发tcp的客户端和服务端详解

    本文介绍了TCP通讯流程和开发步骤,包括客户端和服务端的实现,客户端使用Python的tkinter库实现图形化界面,服务端使用socket库监听连接并处理消息,文章还提供了客户端和服务端的代码示例
    2025-01-01
  • django中url映射规则和服务端响应顺序的实现

    django中url映射规则和服务端响应顺序的实现

    这篇文章主要介绍了django中url映射规则和服务端响应顺序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • django fernet fields字段加密实践详解

    django fernet fields字段加密实践详解

    这篇文章主要介绍了django fernet fields字段加密实践详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • 调试Python程序代码的几种方法总结

    调试Python程序代码的几种方法总结

    这篇文章主要介绍了调试Python程序代码的几种方法总结,文中代码基于Python2.x版本,需要的朋友可以参考下
    2015-04-04
  • Python实现多并发访问网站功能示例

    Python实现多并发访问网站功能示例

    这篇文章主要介绍了Python实现多并发访问网站功能,结合具体实例形式分析了Python线程结合URL模块并发访问网站的相关操作技巧,需要的朋友可以参考下
    2017-06-06

最新评论