在 python 中使用矩阵作为字典值并执行 numpy 矩阵运算
Using a matrix as a dictionary value and performing numpy matrix operations in python
我有一本包含键和值的字典(别人给我的)。
当我读取一个键来提取值时,我得到如下信息:
矩阵([[1.234,-4.056]])
我把这个值称为A。
我定义一个变量如下
B = np.matrix([0, 0])
B 是 A 乘以一组标量的 运行 总和,
for i in range(0, n):
B =+ A*scalar[i]
问题是输出的格式是
矩阵([[xxx , yyy]])
我需要
矩阵([xxx, yyy])
也就是说,我不要双括号。
您想要 numpy.array
而不是 numpy.matrix
。 np.matrix
docs 是二维数据结构,np.array
是nd
维结构。
如果您在创建后立即查看 B.shape
,您会发现它是 (1,2)
,而不是您想要的 (2,)
。
B.A.reshape(2,) # or B.A1
会给你一个 np.array
一维的。
NumPy 数组不等同于 NumPy 矩阵,两者运算的含义不同,例如 *
是 matrix
的点积,但元素明智array
.
的产品
我有一本包含键和值的字典(别人给我的)。 当我读取一个键来提取值时,我得到如下信息: 矩阵([[1.234,-4.056]])
我把这个值称为A。
我定义一个变量如下
B = np.matrix([0, 0])
B 是 A 乘以一组标量的 运行 总和,
for i in range(0, n):
B =+ A*scalar[i]
问题是输出的格式是
矩阵([[xxx , yyy]])
我需要
矩阵([xxx, yyy])
也就是说,我不要双括号。
您想要 numpy.array
而不是 numpy.matrix
。 np.matrix
docs 是二维数据结构,np.array
是nd
维结构。
如果您在创建后立即查看 B.shape
,您会发现它是 (1,2)
,而不是您想要的 (2,)
。
B.A.reshape(2,) # or B.A1
会给你一个 np.array
一维的。
NumPy 数组不等同于 NumPy 矩阵,两者运算的含义不同,例如 *
是 matrix
的点积,但元素明智array
.