【问题标题】:Memory Issue for Array Conversion数组转换的内存问题
【发布时间】:2015-09-03 00:17:40
【问题描述】:

如果我们将包含01boolean 的大型数组转换为另一个包含01float 的数组,则数组的大小将几乎大10 倍。如果我们需要这种转换,在 python (Numpy) 中处理这个问题的最佳方法是什么(如果有的话)?

【问题讨论】:

    标签: python memory numpy


    【解决方案1】:

    您可能不必进行转换。如果您使用 bool 数组和另一个 float 数组执行一些计算,则转换将在操作期间处理:

    import numpy as np
    y = np.array([False, True, True, False], dtype=bool)
    x = np.array([2.5, 3.14, 2.7, 8.9], dtype=float)
    z = x*y
    print z
    [ 0. 3.14 2.7 0. ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-22
      • 2021-01-04
      • 2019-01-24
      • 2011-03-18
      相关资源
      最近更新 更多