用python展平numpy数组

时间:2018-10-24 13:16:23

标签: python python-3.x numpy

以下是重现我的问题的示例:

<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
  
<input type="text" id="calendar">

<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
  <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

当其中一个数组的一项或多或少一项存在问题。

a = np.array([[1,2], [3,4], [6,7]])
b = np.array([[1,2], [3,4], [6,7,8]])
c = np.array([[1,2], [3,4], [6]])
print(a.flatten())
print(b.flatten())
print(c.flatten())

有人知道如何正确整理列表,例如b和c吗?

2 个答案:

答案 0 :(得分:3)

使用concatenate

np.concatenate(b)
Out[204]: array([1, 2, 3, 4, 6, 7, 8])
np.concatenate(c)
Out[205]: array([1, 2, 3, 4, 6])

答案 1 :(得分:1)

您需要:

from itertools import chain

a = np.array([[1,2], [3,4], [6,7]])

b = np.array([[1,2], [3,4], [6,7,8]])

c = np.array([[1,2], [3,4], [6]])

print(a.flatten())
print(list(chain(*b)))
print(list(chain(*c)))

输出:

[1 2 3 4 6 7]
[1 2 3 4 6 7 8]
[1 2 3 4 6]