1

我可以创建一个在每个位置存储一个列表(最初为空)的 numpy 数组吗?

根据文档,numpy 数组存储同质类型,所以我想这是可能的。但是我可以初始化一个来保存空列表吗?

如果 numpy 数组无法做到这一点,我有什么替代方案?(我可以使用哪些其他类似二维矩阵的结构来保存列表/字典/元组?)

4

2 回答 2

2

这很少是一个好主意,但是您要求的是对象类型的数组:

>>> a = np.empty((5,), dtype=object)
>>> a
array([None, None, None, None, None], dtype=object)
>>> a[0] = []
>>> a
array([[], None, None, None, None], dtype=object)
>>> a[0].append(4)
>>> a
array([[4], None, None, None, None], dtype=object)
于 2013-10-06T14:21:24.843 回答
1

如果您知道长度(我们将其称为 N),则可以使用简单的列表推导,然后将其转换为 numpy 数组:

>>> empty_array = numpy.array([[] for i in xrange(N)])
于 2013-10-05T23:06:55.993 回答