列表列表成numpy数组

如何将列表的简单列表转换为numpy数组?这些行是单独的子列表,每行包含该子列表中的元素。



回首忆惘然
浏览 420回答 3
3回答

绝地无双

如果列表列表包含元素数量不同的列表,则Ignacio Vazquez-Abrams的答案将不起作用。相反,至少有3个选项:1)制作一个数组数组:x=[[1,2],[1,2,3],[1]]y=numpy.array([numpy.array(xi) for xi in x])type(y)>>><type 'numpy.ndarray'>type(y[0])>>><type 'numpy.ndarray'>2)制作一个列表数组:x=[[1,2],[1,2,3],[1]]y=numpy.array(x)type(y)>>><type 'numpy.ndarray'>type(y[0])>>><type 'list'>3)首先使列表的长度相等:x=[[1,2],[1,2,3],[1]]length = max(map(len, x))y=numpy.array([xi+[None]*(length-len(xi)) for xi in x])y>>>array([[1, 2, None],>>>&nbsp; &nbsp; &nbsp; &nbsp;[1, 2, 3],>>>&nbsp; &nbsp; &nbsp; &nbsp;[1, None, None]], dtype=object)

九州编程

>>> numpy.array([[1, 2], [3, 4]])&nbsp;array([[1, 2], [3, 4]])
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python