【问题标题】:Can not flatten a numpy array无法展平 numpy 数组
【发布时间】:2020-04-27 10:14:29
【问题描述】:

为什么扁平化不起作用?我已经查看了示例代码,并且我正在做他们在示例中所做的事情。我什至复制了他们的代码并运行了它,但该数组仍然没有作为一个扁平数组出现。 我不知道这是否重要,但我正在运行 Python 3.7.4。

代码:

import numpy as np
array1 = np.array([[1, 2, 3, 2, 5, 8], [9, 5, 1, 7, 5, 3]])
array1.flatten()
print(array1)

输出:

[[1 2 3 2 5 8]
 [9 5 1 7 5 3]]

想要的输出:

[1 2 3 2 5 8 9 5 1 7 5 3]

【问题讨论】:

  • 示例代码本身可能会显示array1.flatten()(带有打印或交互式显示)。您正在单独打印array1。如果不清楚,您需要复制粘贴示例,或提供链接。
  • 我投票结束这个问题,这是一个小问题。

标签: python arrays numpy flatten


【解决方案1】:

您必须将array1.flatten() 分配给一个变量,这样array2 = array1.flatten() 才能工作。

【讨论】:

    【解决方案2】:

    array1.flatten() 返回展平的数组,但不会原地更改。尝试将其等同起来应该可以。 代码:

    import numpy as np
    array1 = np.array([[1, 2, 3, 2, 5, 8], [9, 5, 1, 7, 5, 3]])
    array1 = array1.flatten()
    print(array1)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-16
      • 2014-08-29
      • 2016-08-26
      • 2023-03-30
      • 2019-08-26
      • 2020-07-29
      • 2015-03-14
      • 2019-01-11
      相关资源
      最近更新 更多