文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

numpy中nan_to_num的具体使用

2024-04-02 19:55

关注

在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内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯