【问题标题】:Numpy unwrap ignoring NaNNumpy展开忽略NaN
【发布时间】:2016-05-04 12:05:13
【问题描述】:

我有一个带有风向记录的长 numpy 数组,我正在尝试使用 numpy 的 unwrap 在运行算法来检测数据中的跳跃之前。数据包含 NaN,numpy 似乎无法处理它。一旦遇到一个 NaN,unwrap 返回的所有后续数据点也会转换为 NaN。有没有办法解决这个问题?

我认为我的问题归结为与 here 发布的相同问题,但仅得出结论认为该错误与数据中的 NaN 有关,并且没有提供解决方案。

【问题讨论】:

    标签: python numpy unwrap


    【解决方案1】:

    假设您想保留 NaN,最简单的解决方案是在将数组传递给 unwrap 之前屏蔽掉 NaN,并使用相同的掩码将结果写回:

    a[~np.isnan(a)] = np.unwrap(a[~np.isnan(a)])
    

    如果要保留原始数组,请使用np.copy

    b = np.copy(a)
    b[~np.isnan(b)] = np.unwrap(b[~np.isnan(b)])
    

    【讨论】:

      猜你喜欢
      • 2016-01-21
      • 2015-04-03
      • 2018-07-05
      • 2019-09-24
      • 2019-08-30
      • 2021-06-15
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      相关资源
      最近更新 更多