将 pandas 数据框中的所有 inf、-inf 值替换为 NaN

2024-05-06

我有一个大型数据框,不同列中包含 inf、-inf 值。我想用 NaN 替换所有 inf、-inf 值

我可以逐栏这样做。所以这有效:

df['column name'] = df['column name'].replace(np.inf, np.nan)

但我的代码一次性跨过数据框却没有这样做。

df.replace([np.inf, -np.inf], np.nan)

输出不会替换 inf 值


TL;DR

  • df.replace https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.replace.html更换速度最快±inf
  • but您只需设置即可避免完全替换mode.use_inf_as_na https://pandas.pydata.org/pandas-docs/stable/user_guide/options.html#available-options

更换inf and -inf

df = df.replace([np.inf, -np.inf], np.nan)

Note that inplace is possible but not recommended https://stackoverflow.com/a/60020384/13138364 and will soon be deprecated https://github.com/pandas-dev/pandas/issues/16529.

Slower df.applymap https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.applymap.html选项:

  • df = df.applymap(lambda x: np.nan if x in [np.inf, -np.inf] else x)
  • df = df.applymap(lambda x: np.nan if np.isinf(x) else x)
  • df = df.applymap(lambda x: x if np.isfinite(x) else np.nan)

Setting mode.use_inf_as_na https://pandas.pydata.org/pandas-docs/stable/user_guide/options.html#available-options

请注意,我们实际上不必修改df根本不。环境mode.use_inf_as_na https://pandas.pydata.org/pandas-docs/stable/user_guide/options.html#available-options只会改变方式inf and -inf被解释为:

True意思是对待None, nan, -inf, inf as null
False means None and nan为空,但是inf, -inf不为空(默认)

  • 要么全局启用

    pd.set_option('mode.use_inf_as_na', True)
    
  • 或者通过上下文管理器在本地

    with pd.option_context('mode.use_inf_as_na', True):
        ...
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 pandas 数据框中的所有 inf、-inf 值替换为 NaN 的相关文章

随机推荐

  • DevTools 无法解析 SourceMap:chrome-extension

    我想一周前 我开始在我的谷歌浏览器控制台中收到警告消息 Clearing cache doesn t change anything the messages disappear only in incognito mode 有什么想法如何
  • Gurobi:预求解后保存模型以供重复使用

    我正在寻找一种在 gurobi 中保存预求解模型的方法 以便在下次运行模型时节省预求解所需的时间 我尝试在预求解后使用回调函数将模型写入 mps lp 文件 但是当我加载文件时 它再次开始预求解 如果我正在寻找的东西不可能的话 我也会感谢否
  • ExtJS EditorGridPanel 中的级联组合框

    我有一个正在运行的 EditorGrid 面板 其中两列有 ComboBox 编辑器 两个组合框都是从数据库远程加载的 countryStore and cityStore 我想限制cityComboBox仅显示所选国家 地区的城市 我需要
  • 不支持关键字:“元数据”。?使用 MVC3 在实体框架中使用 Sql 连接

    我将 Entity Framework 4 与我的 Asp Net MVC3 应用程序一起使用 我的问题是我正在使用实体框架对我的数据库执行操作 工作正常 出于其他目的 我还使用 Sql Connection 来存储和检索数据库中的数据 我
  • 远程 ssh 命令:第一个回显输出丢失

    我试图通过 ssh 1 liner 调用在远程机器上运行多个命令 方法是将它们指定为传递给 bash c 的分号分隔字符串 它适用于某些情况 但不适用于其他情况 看一下这个 Note the echo 1 output is lost ba
  • 如何获取 Django Model Field 对象的值

    我使用了一个模型字段对象field object MyModel meta get field field name 如何获取字段对象的值 内容 Use value from object https docs djangoproject
  • 在 GitLab CI 中使用合并请求作业中的工件

    在我的项目中 我使用合并请求来测试构建 并在提交合并到主版本后进行部署 目前我的 gitlab ci yml好像 build stage build script yarn build artifacts paths public depl
  • Django Book 平台可用吗? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 The 姜戈书 http www djangobook com en 1 0 有一个简洁的内容发布模板
  • AFNetworking + 取消所有请求

    当我想停止使用 AFNetworking 构建的同步引擎中的所有当前请求时 我确实遇到了问题 我有 5 个不同的 URL 需要查询 如果前一个查询正确执行 则每个查询都会启动 这非常有效 我想随时停止同步过程 所以我的代码是 void ca
  • Rails 3 和富文本编辑器 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在构建一个 Rails 3 应用程序 其中包含博客 评论和其他需要用户输入文本的功能 我的问题是使用 Javascript 富文本编辑器是否
  • for-yield-getOrElse 是 Scala 的范例还是有更好的方法?

    基本上我想提取一堆选项 a b 等 这是在 Scala 中执行此操作的最佳方法吗 对于我来说 括号中的 for yield 看起来有点令人困惑 for a lt a b lt b c lt c yield getOrElse 尝试使用map
  • 设置特定div的字符集

    是否可以为特定的 div 分配字符集 这样你就可以在一页上拥有多个字符集 我目前正在通过 JS 将文本片段导入到我的网站 其中一些文本需要 UTF 8 字符集 为了确保我的文本正确显示在包含的每个页面 有时是外部站点 上 我将元标记强制添加
  • mvvmcross:如何使用枚举值作为 ItemsSource

    我的模型中有以下内容 public class Equipment public enum Type Detector VegetationClearance Removal Engaging 在视图模型中 private Equipmen
  • 常见的 R 习语 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 R 习惯用法与 Java 和 Python 习惯用法一样 有哪些好的资源 我主要推荐R地狱 http
  • 当用户单击链接时如何隐藏 Angular Material Sidenav

    我正在开发一个使用 Material UI 的 Angular 应用程序 我使用 Angular CLI 生成以下代码 Navigation HTML
  • 是否可以更改 Mercurial 中的默认 diff 工具?

    每次我做一个hg diff file ext我最终使用了控制台差异应用程序 我想使用 Kdiff3 或 WinMerge 我使用的是 Windows 有办法改变吗 我在 Mercurial 文档中找不到参考 我不是在谈论合并 我已经使用 M
  • 在 HP Load Runner 的 VuGen 中加载 javai.dll 时出现错误

    当我尝试在 HP load runner 的 VuGen 中编译一个简单的脚本时 无法启动 JVM 并出现以下错误 Java VM Internal Error Getting Error Loading javai dll 我在用着 HP
  • 单元测试(有时)会因为浮点不精确而失败

    我有课Vector代表 3 维空间中的一个点 这个向量有一个方法normalize self length 1 将矢量缩小 放大为length vec normalize length length 该方法的单元测试有时由于浮点数的不精确性
  • 日期时间值如何存储在mysql中?

    我是数据库世界的新手 我正在从 java 程序发送一个日期时间值 例如 2016 04 27 09 00 00 以便将其保存到 mysql 数据库中 我的问题是如何将该值保存到 mysql 数据库表中的日期时间类型字段中 我的意思是 它是否
  • 将 pandas 数据框中的所有 inf、-inf 值替换为 NaN

    我有一个大型数据框 不同列中包含 inf inf 值 我想用 NaN 替换所有 inf inf 值 我可以逐栏这样做 所以这有效 df column name df column name replace np inf np nan 但我的