Numpymatrix到数组
我正在使用numpy。 我有一个列和N行matrix,我想从N个元素获得一个数组。
例如,如果我有M = matrix([[1], [2], [3], [4]]) ,我想得到A = array([1,2,3,4]) 。 
 要实现它,我使用A = np.array(MT)[0] 。 有谁知道一个更优雅的方式来获得相同的结果? 
谢谢!
如果你想要更可读的东西,你可以这样做:
 A = np.squeeze(np.asarray(M)) 
 等价地,你也可以这样做: A = np.asarray(M).reshape(-1) ,但是这样A = np.asarray(M).reshape(-1)不那么容易。 
 result = M.A1 
http://docs.scipy.org/doc/numpy/reference/generated/numpy.matrix.A1.html#numpy.matrix.A1
 matrix.A1 1-d base array 
 A, = np.array(MT) 
取决于你所说的优雅,我想是什么,但那就是我会做的
或者你可以尝试避免一些临时工
 A = M.view(np.ndarray) A.shape = -1 
您可以尝试以下变体:
 result=np.array(M).flatten() 
 np.array(M).ravel() 
如果你关心速度, 但是如果你关心记忆:
 np.asarray(M).ravel() 
一个好的方法,这将允许select你喜欢的惯例(行less校,校长…)是
 A = M.flatten() 
检查文档以查看选项
 首先, Mv = numpy.asarray(MT) ,它给你一个4×1但是2D数组。 
 然后,执行A = Mv[0,:] ,它给你你想要的。 你可以把它们放在一起,如numpy.asarray(MT)[0,:] 。 
这将把matrix转换成数组
 A = np.ravel(M).T