如何在Python中将二维数组转换为一维数组?

3

我有一个看起来像这样的数组(二维):

[[1.]
 [1.]
 [1.]
 [1.]
 [1.]
 [1.]
 [1.]
 [0.]
 [0.]
 [1.]
 [1.]
 [1.]
 [1.]
 [1.]
 [1.]
 [1.]
 [1.]
 [1.]
 [0.]
 [1.]
 [1.]
 [1.]
 [1.]
 [0.]
 [1.]]

我该如何将它改为:[1 1 1 1 ............1 0 1]?我已经寻找解决方案整整一个下午了,但仍然毫无头绪,有人能给我一些提示吗?谢谢。


arr.ravel() 还是 arr.flatten() - Quang Hoang
1
你花时间阅读了基础NumPy文档吗?例如快速入门教程? - hpaulj
1
@High-Octane,他称之为数组,并使用[numpy]标签。而且对于numpy数组来说,显示方式是正常的,不是列表。在numpy中,reshape(和ravel)生成一个view(通常情况下),这样既快速又节省内存。你的展平器可能适用于列表,但如果应用于numpy数组的话,速度会较慢(如果能工作的话 :) )。 - hpaulj
我没有注意到numpy标签,而numpy数组的输出标签不是像这样吗?array([5, 0, 3, 3, 7, 9])。无论如何,我在这里犯了错误,我会删除我的评论。 - High-Octane
1个回答

5
在一个numpy数组 a 上:
np.squeeze(a)

或者
a.flatten()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接