【发布时间】:2019-11-17 13:20:46
【问题描述】:
我有一个数组,类似这样的:
array([[array([33120, 28985, 9327, 45918, 30035, 17794, 40141, 1819, 43668],
dtype=int64)],
[array([33754, 24838, 17704, 21903, 17668, 46667, 17461, 32665],
dtype=int64)],
[array([46842, 26434, 39758, 27761, 10054, 21351, 22598, 34862, 40285,
17616, 25146, 32645, 41276], dtype=int64)],
...,
[array([24534, 8230, 14267, 9352, 3543, 29397, 900, 32398, 34262,
37646, 11930, 37173], dtype=int64)],
[array([25157], dtype=int64)],
[array([ 8859, 20850, 19322, 8075], dtype=int64)]], dtype=object)
我想要的是
array([33120, 28985, 9327, 45918, 30035, 17794, 40141, 1819, 43668,33754, 24838, 17704, 21903, 17668, 46667, 17461, 32665,46842, 26434, 39758, 27761, 10054, 21351, 22598, 34862, 40285,17616, 25146, 32645, 41276
...,
24534, 8230, 14267, 9352, 3543, 29397, 900, 32398, 34262,
37646, 11930, 37173,25157 8859, 20850, 19322, 8075, dtype=object)
我已经为此搜索了一些解决方案,但似乎所有这些都适用于 np.array 或 list,它们不适用于数组。
functools.reduce(operator.iconcat, orders2.values.tolist(), [])
[array([33120, 28985, 9327, 45918, 30035, 17794, 40141, 1819, 43668],
dtype=int64),
array([33754, 24838, 17704, 21903, 17668, 46667, 17461, 32665],
dtype=int64),
array([46842, 26434, 39758, 27761, 10054, 21351, 22598, 34862, 40285,
17616, 25146, 32645, 41276], dtype=int64),...
orders2.values.flatten()
array([array([33120, 28985, 9327, 45918, 30035, 17794, 40141, 1819, 43668],
dtype=int64),
array([33754, 24838, 17704, 21903, 17668, 46667, 17461, 32665],
dtype=int64),
我什至无法将数组转换为列表
[sub.tolist() for sub in orders2.values]
[array([33120, 28985, 9327, 45918, 30035, 17794, 40141, 1819, 43668],
dtype=int64),
array([33754, 24838, 17704, 21903, 17668, 46667, 17461, 32665],
dtype=int64),
array([46842, 26434, 39758, 27761, 10054, 21351, 22598, 34862, 40285,
17616, 25146, 32645, 41276], dtype=int64),...
orders2.values.flatten()
array([array([33120, 28985, 9327, 45918, 30035, 17794, 40141, 1819, 43668],
dtype=int64),
array([33754, 24838, 17704, 21903, 17668, 46667, 17461, 32665],
dtype=int64),...
我发现很难获得有关数组类的一些信息,一切都是列表或 np.array
【问题讨论】:
-
这里的
array是什么意思?看起来您确实有一个numpy数组数组。如果是这样,为什么没有[numpy]标签?有一个内置的array模块,但我认为不支持这种结构。 -
换一种方式来提问,
imports你做了什么模块?
标签: python arrays data-manipulation flatten