【问题标题】:How does python's max function handle np.nan?python的max函数如何处理np.nan?
【发布时间】:2022-06-29 21:01:19
【问题描述】:

最近我偶然发现了这种非常不直观的行为:

import numpy as np
max([0, np.nan])  # 0 
max([np.nan, 0.0])  # np.nan

我假设 max 函数将两个条目都视为最大值,并且 - 根据文档 - 返回第一个。我不得不承认,我不知道 Python 函数 max 通常如何知道如何处理 numpy 类型。当然,np.max 返回预期的结果(np.nan)。我正在使用 Python 3。有人知道这里发生了什么吗?

【问题讨论】:

    标签: python numpy


    【解决方案1】:

    official numpy docs 说:

    传播 NaN 值,即如果至少一项为 NaN,则相应的最大值也将为 NaN。要忽略 NaN 值(MATLAB 行为),请使用 nanmax。

    希望我能帮上忙!

    【讨论】:

      猜你喜欢
      • 2018-08-21
      • 2020-04-30
      • 2022-12-20
      • 1970-01-01
      • 2021-01-17
      • 1970-01-01
      相关资源
      最近更新 更多