我有一个类似
的2D列表a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
我希望将其转换为2d numpy数组。我们可以不分配像
这样的内存吗?numpy.zeros((3,3))
然后将值存储到它?
答案 0 :(得分:71)
只需将列表传递给np.array
:
a = np.array(a)
如果默认值不符合您的要求,您也可以借此机会设置dtype
。
a = np.array(a, dtype=...)
答案 1 :(得分:2)
我正在使用以
形式导出到python文件的大型数据集XVals1 = [.........]
XVals2 = [.........]
每个列表的长度相同。我用
>>> a1 = np.array(SV.XVals1)
>>> a2 = np.array(SV.XVals2)
然后
>>> A = np.matrix([a1,a2])
答案 2 :(得分:1)
np.array()
比unutbu上面说的更强大。
您还可以使用它将np数组列表转换为更高维度的数组,以下是一个简单的示例:
aArray=np.array([1,1,1])
bArray=np.array([2,2,2])
aList=[aArray, bArray]
xArray=np.array(aList)
xArray的形状是(2,3),它是标准的np数组。此操作可避免循环编程。
答案 3 :(得分:1)
只需使用以下代码
c = np.matrix([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
matrix([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
然后它会给你
您可以使用以下代码检查矩阵的形状和尺寸
c.shape
c.ndim