当前位置: 首页 > 知识库问答 >
问题:

取消python-xarray的警告

万高轩
2023-03-14

我正在运行以下代码

positive_values = values.where(values > 0)  

在本例中,values可能包含NaN元素。我相信由于这个原因,我得到了以下运行时警告:

RuntimeWarning: invalid value encountered in greater_equal if not reflexive  

xarray是否有压缩这些警告的方法?

共有2个答案

杨成礼
2023-03-14

作为一个一般的经验法则,警告应该被注意而不是被压制。要么你知道是什么引起了警告,要么你不知道。如果您知道引起警告的原因,通常有一个简单的解决方法。如果您不知道是什么原因导致警告,则很可能存在bug。在这种情况下,您可以使用&的短路特性,如下所示:

positive_values = values.where(values.notnull() & values > 0)
宋昕
2023-03-14

warnings模块提供您要查找的功能

要取消所有警告,请执行以下操作(请参阅John Coleman的答案,了解为什么这不是一个好的实践):

import warnings
warnings.simplefilter("ignore") 
# warnings.simplefilter("ignore", category=RuntimeWarning) # for RuntimeWarning only

要在warnings.catch_warnings()上下文管理器中临时禁止显示,请执行以下操作:

import warnings

with warnings.catch_warnings():
    warnings.simplefilter("ignore")
    positive_values = values.where(values > 0)  

上下文管理器在进入上下文之前保存原始警告设置,然后在退出上下文时将它们设置回来。

 类似资料:
  • xarray 是一个开源 Python 包,它可以使处理多维数组更加简单、高效并有趣。xarray 在原始类 NumPy 多维数组中引入了标签化的变量名称和坐标索引,实现了更直观、更简洁和更加不容易出错的能力。该软件包包括一个庞大且不断增长的域无关功能库,用于使用这些数据结构进行高级分析和可视化。xarray 灵感来自同为解决数据分析任务而诞生的 pandas。 多维数组(张量)是计算科学的重要组

  • 在我的代码中,我创建了一个警报,如下所示: 要取消警报,我执行以下操作: 移除任何具有匹配意图的警报。任何类型的警报,其意图与此警报匹配(由filterEquals(Intent)定义),都将被取消。 我不太确定“匹配意图”的定义是什么。如果我用上面的代码创建多个警报,然后按照显示的方式执行取消,它会取消我创建的所有警报吗?

  • 我使用作为Gradle项目中的CheckStyle配置。 但是,我不知道如何让它在我的项目根目录中而不是在默认的路径中查找这个文件。我如何将它指向另一个位置? 如果我设置,它就会满足我的要求,但我们又回到了我不想修改的问题上。 似乎我需要以某种方式设置系统属性,但我不确定在我的Gradle配置文件中的何处进行此操作,或者将其设置为什么。

  • 问题内容: 在运行存储过程时,该过程可能会引发警告消息。 有什么办法可以在Golang中使用Postgresql驱动程序(https://github.com/lib/pq)获取这些消息? 问题答案: 答案似乎是否定的。 在我的测试中,Postgres服务器似乎没有发送警告和结果。即使这样做,返回错误以及sql.Result充其量也将造成混乱,并且需要进行修改。在函数 中 引发错误 确实 返回了错

  • 我的猜测是,和在关闭应用程序后为空,并且没有保存。但我不知道怎么解决这个问题。

  • 免责声明:我不是在问替代进口产品。虽然这些信息可能有用,但请随时留言;但任何包含使用其他导入之类内容的答案都将被否决。我在问如何抑制警告。谢谢 以下是我使用的导入: 声纳抱怨道: 使用JavaAPI中的类而不是Sun类。 如何抑制此警告?

  • 这就像一个确认框,要求用户进行一些确认,例如用户是想要执行任务还是拒绝或取消任务。 根据用户选择调用不同的方法。 语法 (Syntax) 以下是一个简单的语法。 Ext.MessageBox.show ({ title: 'Details', msg: 'Please enter your details:', width:300, buttons: Ext.Message

  • 我使用hikaricp作为我的数据库连接池。当我完成我的SQL语句时,我将关闭连接,在连接上调用关闭,我相信您应该将连接代理返回到池。然而,我看到以下警告(不是错误)消息,我不得不怀疑这是否是一个需要解决的问题,因为我没有正确清理我的连接资源。我不是使用资源尝试,而是使用尝试捕获最后(我在最后关闭连接