【问题标题】:Check Arrayfire Array against NaNs根据 NaN 检查 Arrayfire 数组
【发布时间】:2012-09-25 11:36:40
【问题描述】:

我在 Python 上使用 Arrayfire,但我无法使用 af.sum() 函数,因为我的输入数组中有 NaN,它会将 NAN 作为 sum 返回。

由于速度问题,不能使用 numpy.nansum/numpy.nan_to_num。

我只需要一种方法将这些 NaN 转换为 arrayfire 中的浮点零。

【问题讨论】:

  • 我克服了消除原因的问题,即在使用 NaN 创建栅格之前的代数运算。如果有人能回答这个问题仍然很有趣,也许是来自 Arrayfire 编码器的人。
  • 我是ArrayFire + Python的开发者。我刚刚意识到库中没有“isnan”功能。我会尽快添加它。告诉我什么时候可以下载。电子邮件地址在我的个人资料中。

标签: python arrayfire


【解决方案1】:

瓶颈值得研究。他们对 numpy.nanxxx 函数进行了多项优化,根据我的经验,这使其比 numpy 快 5 倍左右。

【讨论】:

    【解决方案2】:

    您可以使用numpy.nansum,它将nan 视为数组总和中的0。

    numpy.nansum(arrayfire)
    

    【讨论】:

    • 正如我所说,将 arrayfire.array 转换为 numpy.array 并对其进行操作(长期内存错误除外)但对于我的脚本来说太慢了。我需要一些表达式来使用 arrayfire python 模块检查 NaN:Arrayfire
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-15
    • 1970-01-01
    • 1970-01-01
    • 2011-03-27
    • 2020-09-29
    相关资源
    最近更新 更多